Gitでソースコードの管理
最終更新日 2021年3月11日
監修・著者 プログラミングスクールアドバイザー 本田 孝一
プログラミング用語で「Git」という言葉を聞いたことがあるかもしれません。Wikipediaによると「Git」とは「プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システム」のことです。ソースコードというのは、あるプログラムの設計図のことです。
例えて言うと、設計士はある建物を建てるためにまず設計図を描きます。設計図には各部位のサイズや間取りなどが細かく書かれていて建物の全体像を示します。同じようにソースコードはあるプログラムを構築するための要素を書いたものです。コンピュータプログラムを作る流れを簡単におさらいしてみましょう。
【参照】GitHub
「Git」って何?
まず人間の理解できる内容で一通りの命令文を書き(プログラミング言語)、それをコンピュータが理解できるように「翻訳」します。そうすると機械は命令通りの操作をします。ソースコードはこの最初の部分、つまりプログラミング言語で書かれた一通りの命令文ないしはプログラムの設計図というわけです。Gitはこのソースコードを的確に管理してくれるツールです。
Wikipediaには以下のように説明されています。
Git(ギット)は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。Linuxカーネルのソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されている。Linuxカーネルのような巨大プロジェクトにも対応できるように、動作速度に重点が置かれている。現在のメンテナは濱野純 (英語: Junio C Hamano) で、2005年7月から担当している。 Gitでは、各ユーザのワーキングディレクトリに、全履歴を含んだリポジトリの完全な複製が作られる。したがって、ネットワークにアクセスできないなどの理由で中心リポジトリにアクセスできない環境でも、履歴の調査や変更の記録といったほとんどの作業を行うことができる。これが「分散型」と呼ばれる理由である。
引用: フリー百科事典『ウィキペディア(Wikipedia)』 Git
【関連記事】・Webアプリケーションを開発
できること
ソースコードは一定ではありません。更新されたりバックアップされたりします。ここで問題が起きます。ソースコードに変更を加える場合には、変更前の状態のものを保存しておく必要があります。そうしておけば変更前の状態に後で戻すことも可能になります。しかしファイルをコピーする方法だと管理が面倒です。
同じような名前のファイルが無駄に増えたりするからです。また個人でなくチーム作業をしている場合、仮に複数の従業員が変更作業を同時に行っているとして、先に編集を終えた人のファイルを他の人が上書きして変更を消してしまうという可能性があります。こうした問題を解決してくれるのがGitです。Gitを使うと更新の履歴を簡単に保存しておけて、好きな時に以前の状態に戻す事が可能です。
また他の人の変更点に上書きしてしまうわないために注意喚起がなされたりします。さらにGitは分散型の管理システムです。専用のリポジトリ(データを保存する場所)を複数でシェアするだけでなく、利用者がそれぞれローカルで変更履歴を保存することもできます。そのためネットワークに依存せずに作業が行えます。ちなみにリポジトリを共有する場合は本来はサーバを用意しますが、「GitHub」などに代表されるサービスを使うと、サーバを用意せずに開発を行う事ができてとても便利です。
【関連記事】・Ruby on Railsの実践スキル
監修・著者 プログラミングスクールアドバイザー 本田 孝一
元プログラマー・SEです。システム開発やプログラムの仕事に従事してきました。