概要
バージョン管理システムのひとつであるGitについてまとめてみました。
目次
歴史
Gitは、Linuxカーネルの開発において生まれました。
Linuxカーネルの開発では、世界中の多くの開発者のコードを統合する必要がありました。
最初はBitKeeperというバージョン管理システムを使用していましたが、以下のような問題がありました。
- 商用ソフトウェアのため、制限があった
- サーバー側が有料だった (クライアント側は無料)
2005年7月、Linuxの作成者であるリーナス・トーパルズはこれらの問題を解決するためにGitの開発を開始しました。そして同年の12月に、最初のバージョンをリリースしました。
名前の由来
Gitは英語で「バカ」や「間抜け」という意味らしいです。
また、「Global Information Tracker」からきている、という解釈もあります。
リーナス・トーパルズが「僕は自己中心的な奴だから、自分のプロジェクトには自分にちなんだ名前を付けるようにしているんだ。最初はLinuxで、今度はGitだ。」と発言したらしいです。
濱野 純氏について
現在Gitのメンテナーは日本人の濱野 純氏がつとめています。
リーナス・トーパルズはGitが成功した要因として濱野氏の貢献があったと認識しており、メンテナーとして指名したらしいです。
参考:
Gitの操作方法
Gitの操作方法は色々なサイトに纏められています。
以下の動画がとても参考になりました。
- 【Git入門】Git + Github使い方入門講座🐒Gitの仕組みや使い方を完全解説!パーフェクトGit入門!
- 【わかりやすい!Git操作】初心者向けのGitの基本 〜 30分で入門!
- 【GitHub入門】初心者向け!GitHubでチーム開発するための基本操作を解説!
CUI vs GUI
GitはCUIで操作する設計となっています。
元々Linuxカーネルのバージョン管理システムとして開発されたので、Linuxの開発者は既にCUIに親しんでいたり、GUIより軽量で高速、かつリソース消費も最小限に抑えられるメリットもあってCUIで開発されたのかと思います。ただ現在は、GUIを使用してマウスを使用しグラフィカルにGitを使用できるツールも多く登場しています。
そのため、Git操作をCUI/GUIどっちで行った方がよいかの議論 (?) もあります。
個人的には、自身の勉強にはCUIを使用して、業務ではGUIを使用していました。
業務で急にGitを使用することになりましたが、過去に使用経験がなかったこともあり、操作ミスを防ぐといった意味でGUIを使用していました。そのため、業務上でGit操作が起因するミスは発生したことはありませんでした。
GUIを使用してイメージが掴めて来くると、CUIで勉強するとなるほどと思ったりします。
知識がついてCUIでも全然問題無い方はCUIで大丈夫かと思いますが、Gitをあまり知らなく業務で触ることになった場合はまずはミスを防ぐという意味でGUIも良さそうかと思いました。
ただ検索して出てくるのはCUIでの操作の方が多いと思うので、やはりGUIを使用する場合でも最低限のCUIでの操作は把握しておいた方が良さそうと感じました。
Forkとは
私が使用していたGitクライアントツールの一つです。GUIでGitの操作ができます。
- プル
- フェッチ
- コミット
- ブランチの作成
- リベース
- チェリーピック
など、Gitの基本的な操作を行うことが出来ます。
インストール方法
以下のサイトからインストールできます。
Forkは無料でダウンロードすることができますが、長期間使用するにはライセンスを購入する必要があります。
参考:フォークライセンス
使用方法
使用方法は下記に記載されています。
終わりに
個人的にもCUI操作はまだ知らないことが多くあるので、勉強を続けていきたいです。