私は git ワークスペースを持っていますが、そこに変更が既に存在するかどうかを知りたいです..既存のコミットがワークスペースに既に存在するかどうかを知るには、コミットを介して確認するのが最善の方法だと思いますか?他に必要なアイデアはありますか?変更がワークスペースに既に存在するかどうかを確認することも素晴らしいです...
ありがとう
私は git ワークスペースを持っていますが、そこに変更が既に存在するかどうかを知りたいです..既存のコミットがワークスペースに既に存在するかどうかを知るには、コミットを介して確認するのが最善の方法だと思いますか?他に必要なアイデアはありますか?変更がワークスペースに既に存在するかどうかを確認することも素晴らしいです...
ありがとう
コミットには変更 ID がありますか? もしそうなら、最も簡単な答えは を使うことだと思いますgit log | grep $CHANGE_ID
。これにより、その変更 ID がコミット履歴にあるかどうかがすぐにわかります。
Gerrit Web UI を使用すると、サーバーからワークスペースへの変更をチェリーピックするのが簡単になるため、元のコミットの SHA1 を使用するより良いアプローチは考えられません。
Gerritが実際にこれに適合するかどうか、またはどのように適合するかはわかりませんが、次のコマンドでコミットを調べることができます
git show COMMIT
コミットが見つからないというメッセージが表示された場合、そのコミットは存在しません。
git log
Brad's answer で述べたように、Change-Id を実行して grep することは、それを行う 1 つの方法です。その欠点は、コミット メッセージでその Change-Id への参照を取得することであり、それらは探している実際の変更ではない可能性があります。
代わりに、次のようにコミットの sha1 を検索できます。
git log --format="%H" | grep 11111111222222223333333344444444
11111111222222223333333344444444
コミットの sha1 に置き換えます。