質問: 「Git」とは何なのでしょうか?インターネットでは、ソースコード等の分散型バージョン管理システムとだけ説明されていることが多いですが、具体的な使用例を教えて頂きたいです。 1バージョン管理でしか、普通は使わないものですか? 2「Git」を使うには何か登録が必要なのでしょうか?また、登録情報を忘れてしまったらどうすればいいのでしょうか? 3「GitHub」「GitLab」と何か関係があるのでしょうか? 4Eclipseに標準装備されている「Git」(パースペクティブのところ)と、単体インストールする「Git」は何か違うのでしょうか? 5個人的な妄想?ですが、Gitリポジトリというところから何らかのソースコード?や必要なものを取ってきてコーディングに使うみたいな、ライブラリ的な機能があったりするのでしょうか?
回答: > > 「Git」とは何なのでしょうか?インターネットでは、ソースコード等の分散型バージョン管理システムとだけ説明されていることが多いですが、具体的な使用例を教えて頂きたいです。 > > > 「バージョン管理システム」は変更履歴を管理するソフトウェアで、プログラム開発などで使われます。それなりに歴史が古く、CVS、SVNなどが有名です。Git はこれらの後発で、Linuxカーネル開発のために開発されました。 一般的なGitの使い方は次のようになります。 1. リモートサーバにあるリポジトリをローカルに複製 (git clone) 2. ローカルでファイルの変更、追加、削除を行う 3. ローカルリポジトに変更履歴を記録する (git commit) 4. リモートサーバーのリポジトリへの変更をローカルに反映させる (git pull) 5. 変更内容が衝突する場合はマージする (git merge) ※自動マージ可能なものに限る 6. ローカルの変更内容をリモートサーバーのリポジトリに反映させる (git push) 集中管理型だと、上記の 2 のあとに 6 がくる感じなので、ソフトウェア開発のワークフローが 大きく異ってきます。 Gitだとローカルリポジトリを好きに使えるのとマージが楽なのが特徴です。 ただ、個人的な印象だと GitHub を使うために Git を使うみたいなところがあります。 GitHub は リモートリポジトリを提供している プロジェクト管理用の Web サービスです。オリジナル にはない Pull Request という機能があります。GitLab は GitHub に似てますが サーバーにインストールして使います。 Eclipse の Git は、オリジナルの Git のフロントエンドです。オリジナルはコマンドラインツール ですが、GUI版の Gitクライアントは 多数あり、そういったものの一種ですね。