1. ホーム
  2. git

[解決済み] 古いgit-commitをcloneする方法 (とgitに関するその他の質問)

2023-06-30 05:44:27

質問

私のプロジェクトのgit-repositoryには約20のコミットがあります。私は、実際のコミットを git clone ,

  • しかし、古いコミットをクローンするにはどうすればよいのでしょうか?
  • 本当に良い git-GUI はないのでしょうか (imho qgit は良いGUIではありません)?
  • ブランチとは何ですか?
  • 0.1や0.2などをリリースしたいとき、gitでこれらのコミットをマークする最良の方法は何ですか?
  • svnとの大きな違いは何ですか?

どのように解決するのですか?

git リポジトリには、すべての履歴が常時保存されています。

ですから、リポジトリをクローンするときは、その全履歴を含めてクローンすることになりますし では であれば、好きなコミットからブランチを作成することができます。

 $ git checkout -b aNewBranch SHA1

には、SHA1 でコミット ID を表し、そこから先に進みたいコミット ID を指定します。


Git におけるブランチは、単に DAG (有向非循環グラフ) の一つの経路を追跡する方法にすぎません。これは、Gitリポジトリの歴史を表すコミットの集合です。

これらのコミットのいずれかに割り当てる単なるポインターであり、新しいコミットとともに移動し続けます。

参照 プロ Git の本を読んでみてください。


特定のコミットをマークするには タグでマークできます。 これはブランチのように単なるポインターですが、不変のものです (新しいコミットを作成したときに移動することはありません)。

あなたはできれば アノテーションされた タグは、Git データベースに完全なオブジェクトとして保存されます。タグはチェックサムを行い、タガー名、電子メール、日付を含み、タグ付けメッセージを持ち、GNU Privacy Guard (GPG) で署名と検証を行うことができます。


の「グラフィカル インターフェース」セクションを参照してください。 インターフェイス フロントエンドとツール のページには、現時点でのGitの様々なGUIがリストアップされています。


Git と SVN の違いに関する多くの質問を目にするでしょう。 私の答え (あるいは これ ) のようなものです。

GitとSVNの根本的な違いに関する私の最も完全な回答はこちらです。

"どちらが良いですか:gitとSVN"。 .