[解決済み] あるコミットが他のコミットの子孫であるかどうかを判断するにはどうすればよいですか?
2022-04-25 13:01:23
質問
Git で、ブランチ内のあるコミットが他のコミットの子孫であるかどうかを判断するにはどうしたらよいですか?
どのように解決するのですか?
プログラム的に(スクリプトなどで)確認したい場合は、以下のようになります。
git merge-base A B
と同じです。
git rev-parse --verify A
(であれば、AはBから到達可能)、あるいは
git rev-parse --verify B
(その場合、BはAから到達可能です)。
git rev-parse
は、コミット名からコミットSHA-1 / コミットIDへの変換に必要です。
使用方法
git rev-list
のように
VonCの回答
も可能です。
編集する。
最近のGitでは、このクエリを明示的にサポートしており、その形式は
git merge-base --is-ancestor
.
質問しているコミットの1つが
ブランチチップ
であれば
git branch --contains <commit>
または
git branch --merged <commit>
の方が、より良いノンプログラミングの解決策になるかもしれません。
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 既存の、プッシュされていないコミットメッセージを修正するには?
-
[解決済み] Gitを使って最後のXコミットをまとめる
-
[解決済み] ある特定のコミットのコミット作者を変更する方法は?
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み] Git で最新のコミットを新しいブランチに移動する
-
[解決済み】ローカルリポジトリのブランチをリセットして、リモートリポジトリのHEADと同じにする
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】GitHubのメッセージの意味: メールのプライバシー制限のためプッシュが拒否されました。
-
gitコミット発生 ! [リモート拒否] master -> master (pre-receive hook declined) 解決策
-
[解決済み】ローカルGitブランチとそのリモートブランチを比較する方法
-
[解決済み] "would clobber existing tag "を取り除くには?
-
[解決済み] 警告: リモート HEAD は存在しない参照元を参照しているため、チェックアウトできません。
-
[解決済み] git initを2回実行すると、リポジトリが初期化されますか?それとも既存のリポジトリを再初期化しますか?
-
[解決済み] 新しいBitbucketでリポジトリを削除するにはどうすればよいですか?
-
[解決済み] Gitのプッシュエラーです。Unable to unlink old (Permission denied)です。
-
[解決済み] ポーセリンとは、Gitではどのような意味ですか?
-
[解決済み] [Solved] 未コミットの変更があるかどうかをプログラムで判断するには?