1.はじめに – Gitとは –
こんにちは。かじです。今回はGitについて解説したいと思います。
Gitとは一言で説明すると分散型のバージョン管理ツールです。
通常、アプリケーションの開発現場において、新規開発や保守における機能追加やバグ改修などソースコードは常に書き変わります。そうすると、品質を管理する上で、プログラムの改修が適切か、どの改修のタイミングで出たバグなのかなどを評価する上でも、どのプログラムのどの部分をどうして修正したのか、書き足したのかなどを、管理していく必要があります。
また、開発を数人のチームで行う場合、機能実装や改修が並行で行われた際に、ソースコードが人によって入れ違ってしまうという問題がおこなってしまいます。そのため、ソースコードを各々が管理するのではなく、一元管理する必要があります。
これらの問題を解決するツールが、Gitになります。
2.Gitの仕組み
GitはGitサーバーにソースを一元管理ための共有リポジトリを作成します。
この共有リポジトリからチームのメンバは、ソースコードを自分の開発用PCにダウンロードして、ローカルリポジトリを作成し、そのローカルリポジトリ上でコード修正などの作業をします。
作業が完了したら、修正したソースコードを共有リポジトリへアップします。そのアップしたソースコードを他の人がダウンロードして、作業することで、ソースコードをバージョンごとに管理することが可能になるのです。
共有リポジトリを複製してローカルリポジトリを作成することをクローンと言います。
また、ローカルリポジトリに作業での変更内容を反映させることをコミット、コミットした内容を共有リポジトリに反映することをプッシュ、プッシュした内容を他の人が自分のローカルリポジトリにダウンロードすることを、プルと言います。
3.Gitを使用するために
ここまででGitがどういうツールであるのか分かっていただけたと思います。
そうしたら、Gitはどうやったら使用することができるのでしょうか。
Gitはクライアントサーバシステムになります。クライアントサーバシステムというのは、サーバとなるコンピュータを一つ用意して、そのサーバーにクライアントからアクセスすることで使用することができるシステムになります。皆さんに馴染みがあるところで言うと、Webサービスは典型的なクライアントサーバーシステムです。
という訳で、Gitを使用するにはGit用のサーバが必要になります。
社内サーバーや何かしらのPCでもGitをインストールすれば、Gitサーバーにはなります。
物理サーバを用意するのは難しいという方は、Github、Bitbucket、tracpath、GitLabなどの無料ホスティングサービスやAWS CodeCommit、Google Cloud Source Repositories、Azure ReposなどクラウドサービスでもGitのリポジトリサービスがありますので、それらの中から現状の環境との親和性を考慮してサービスを選定することがいいかと思います。
そして、次に必要なのは、クライアントのPCにGitをインストールすることです。
Gitのインストール方法は下記を参照ください。
ここまでできたら、基本的にGitは使用できますが、コマンドラインでコマンドを打ちながらの操作になってしまい、少し面倒くさいです。
そのため、個人的にはクライアントソフトをインストールすることをお勧めします。クライアントソフトを使用することで、GUIでGitを操作できるため、操作性が上がります。
クライアントツールとしては、SouceTreeやGithub Desktop、TortoiseGitなどがあり、実際に使用してみて操作性がいいものを選ぶのがいいかと思います。
これでGitの使用する準備はできました。
次回は実際にGitを使用してみましょう。
コメント