GitHub実践入門 ~Pull Requestによる開発の変革
公開日 更新日 2014/09/22
仕事でGitを使った開発をしたりGitHubのツールを活用する、という機会があったのですが、そもそもGitやGitHubをわかっていないという状況だったので、理解を深めるために本書を読んでみました。
Gitについて
簡単に言うと、Gitは分散型のバージョン管理システム、対して集中型のバージョン管理システムというものが従来からSubversionなどが有名。
分散型はリポジトリがフォークされ、完全にリモート上での管理ができるというもの。
分散型と集中型とを比較したものをいくつか見てみたのですが、分散型の一番のメリットはオープンソースソフトウェアのように開発者が世界中にいて自由に開発したいというような用途で活用するものだと思いました。
なので、バージョン管理としての履歴管理やブランチ・マージといったような基本機能は、どちらも同じものと思いました。
特に同じ職場のメンバーで拠点が同じだったり、ネットワーク越しに共有することが少ない場合は、Gitにこだわる必要はないのかなと思います。
ただし、最近の世の中ではGitが人気なので、新しいソースツリーを作るという機会に乗り換えるのがよいんでしょう。
とくにツール類はGitしか対応してないものがあって、AtlassianのSourceTreeなんかはSubversionに対応してなく、Git(とMercurial)でしか使えません。
SourceTreeはブランチグラフが綺麗だし、同じくAtlassianのJIRAを使ったバグ管理を併用するとなると余計にGitでやりたい気がしてきます。
GitHubについて
こちらも簡単にいえば、Gitリポジトリを提供し、WEBを通じてコラボレーションを実現するというWEBサービスとのこと。
コードレビュー機能がいい感じに使いやすそうなので、オープンソースソフトウェアを作るときには、間違いなくこういうサービスを活用したいかな。
とはいえオープンソースソフトウェアをすぐに作る予定がないため、こちらについては、その時が来たらもう一度、その時メジャーとなっているサービスを比較するところから始める気がします。
レスポンシブ広告
関連記事
-
オープンソース・クラウド基盤 OpenStack入門
プライベートクラウドという用語が現れてから結構経ちますが、2,3年前ぐらいからオ …
-
インフラデザインパターン ~安定稼動に導く127の設計方式
サーバー/ストレージ/ネットワークといった物理リソースを組み込んだシステム開発の …
-
OpenFlow徹底入門 SDNを実現する技術と知識
SDNの雰囲気を嗜む 最近すごく注目されているOpenFlow。 …