gitが使える分野・適応事例

gitを使いたい分野・適応事例

gitとは

 ウィキペディアでの定義はこの様になっています。
Git(ギット[2][3])は、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである。Linuxカーネルのソースコード管理に用いるためにリーナス・トーバルズによって開発され、それ以降ほかの多くのプロジェクトで採用されている。
参照 Git - Wikipedia
バージョン管理システムという分類の中の一つがgitのようです。
主にソフトウェアのソースコードの管理などに使われていて、Linuxのソースコードもgitで管理されています。私が参加したボランティアでも、ウェブページのソースコードを管理するためにgitを使用していました。筆者の観測では、一般的にもgitはよく使われていて、開発を行う企業にとってなくてはならない存在だと言えます。

なぜgitを使うか

例えば、皆さんは太神先生からチームでプログラムを作る課題を出されました。課題の提出期限は短く、また時間もないため、オフラインで集まれる時間だけでは足りません。そこで皆さんはそれぞれオンラインでプログラムを共有しながら課題に取り組めないか議論しました。最初に出たftpを使う方法ではだれがどんな編集を加えたのかよくわかりません。Discordでファイルを共有し合いお互いに変更部分を自分のものに取り入れる方式では、みんなで同じ進捗にならず、同期が取りにくく困ります。そこで、だれがどういう編集を加えたのかわかりやすく、かつ時間軸を明確にできるシステムがあればいいですね。これがgitで、今紹介したような需要があり、世界中でgitが使われるわけです。
gitの簡単なイメージを示しておきます。

gitの使用例

gitはバージョン管理システムであるという汎用性を活かして、ソースコードの管理以外にも、利用されています。
筆者が確認したものを例としてあげると、新しいプロトコルを作成する際、そのプロトコルの草案をgitで管理し、共同編集していく場合や、卒業論文のバックアップとしての利用例、更に技術ドキュメントや単に高機能なファイル共有としての利用例もあります。
更に、開発者以外にとってもgitは身近な存在になり得ると思います。例えばリポジトリがハブのように集まっているサイトとしてgithubがありますが、このgithubのリポジトリ検索機能を使うことで、個人開発のソフトウェア・アプリケーションや、アニメの文字起こしまで見つかります。
https://github.com/akahuku/kemono-friends-dialogs
まとめ
gitはバージョン管理システムの1つで、バージョン管理システムというのはリポジトリに誰がどのような編集を加えたのか明確な時間軸を持って記録する仕組みのことである。主な利用例は、ソースコードの管理だが、バージョン管理の汎用性の高さからそれ以外にも使用される。

出典

https://speakerdeck.com/mixi_engineers/2023-git-training