gitを使って作業ブランチから自分のmasterブランチにマージした後、マージが起こる前にmasterで最後にコミットを見つけることができます。これはどうすればいいですか?これを行うにはマージの前に最後のgit commitを見つける方法
答えて
簡単な方法は、あなたがマージポイントを見つけるまで、そしてちょうど右側のグラフを下に従って
git log --pretty=format:'%h : %s' --graph
を入力することです。また、ファイル、temp.txt
に結果を出力します
git log --pretty=format:'%h : %s' --graph > temp.txt
、あなたのエディタで開いて、マージのようなテキストを探すために検索機能を使用できることを行うことができます。
私は、この情報を確認するために `` `git_log``を使用することができますので、このアプローチは、最新の系譜についての他の質問の多くに答えるために便利ですので、私の.bash_profile
ファイルに
alias git_graph="git log --pretty=format:'%h : %s' --graph"
を入れているコミット。
git log -1
また、マージが発生した後にコミットを判断する簡単な方法は、reflogを使用することですgit log --help
またはhttps://git-scm.com/docs/git-log
を参照してください。そして、その最後に発生した操作は、マージしたと仮定すると、
:あなたがログとREFLOGを使用して、それに対処できるよう
git log [email protected]{1} -1
[email protected]{1}
は、最後の操作の前に、前のHEADを指します。
git log
は、現在のブランチでコミットのシーケンスを表示するので、マージ後は常にマージコミットとなり、マージされたブランチからコミットする前に表示されます。 git reflog
は、リポジトリ内の操作のシーケンスを示します(例えば、merge、rebase)。ドキュメントで説明されているように:
参照ログまたは "reflogs"は、ブランチやその他の参照のヒントがローカルリポジトリで更新されたときに記録します。 Reflogは、さまざまなGitコマンドで、参照の古い値を指定するのに便利です。
あなたはすでにここにマージコミットを見つけるための一つの方法である、master
にbranch
を合併している場合:
# With the ancestry-path option, 'git rev-list branch..master' (or git log)
# will only list commits which are parents of 'master'
# *and* children of 'branch'
#
# If 'branch' was merged into 'master', the last commit in this list
# is the merge commit :
$ git rev-list --ancestry-path branch..master | tail -1
master
の状態マージは、こののコミット最初の親である前に:
$ h=`git rev-list --ancestry-path branch..master | tail -1`
$ git log $h^
これをチェックして動作します。しかし、私はより一般的に有用なので、私は私の答え、stackoverflow.com/a/41628915/1299362を受け入れることになります。マージが長い、長い道のりだったなら、自分の答えを使って自分自身を見ることができました。 – Obromios
- 1. Jenkins APIには、最後のビルドのgit commitを見つける方法がありますか?
- 2. gitで最後にチェックアウトされたブランチを見つける方法
- 3. グループ内の最後から2番目のレコードを見つける方法最後に見つけ出す
- 4. "git commit"の前に複数の "git add"
- 5. 最近gitでファイルのコミッターを見つける方法は?
- 6. gitリポジトリで最後に編集したファイルを見つける
- 7. 'git commit --amend'の後にrepoに移動する方法
- 8. マージ後にGit Commitが開きますVIM
- 9. 最後のgit commitでuntrackedファイルを追加するには?
- 10. 最後のロックのタイムスタンプを見つける方法は?
- 11. Kohanaのormオブジェクトで最後のキーを見つける方法
- 12. 階層ツリーの最後のノードを見つける方法C#
- 13. Gitは私が押した最後のコミットを見つけた
- 14. Javaで最後の就業日を見つける方法
- 15. Rails:最後にレコードを見つける方法は?
- 16. git rmの後に以前のgit commitからファイルを回復します
- 17. ファイルを修正した最新のgit commitを見つけるにはどうすればよいですか?
- 18. 最後のレコードを見つける
- 19. numpy.ndarrayで最大値の最後の出現を見つける方法
- 20. gitはマージされていないブランチを見つける
- 21. リベース後にgit commitを元に戻す
- 22. マージ後のXcodeのproject.pbxprojでエラーを見つける
- 23. gitのブランチに最新のマージをコミットする方法
- 24. Neo4j空間 - 方法の特定の点の前後の点を見つける
- 25. 最後の5分間にトップSQLを見つける方法は?
- 26. Git diff前後のマージ後?この質問の
- 27. リスト内に最後に存在するDIRを見つける方法
- 28. 流星群の最後の要素/オブジェクトのIDを見つける方法は?
- 29. gitローカルフォルダ内の新しいディレクトリを見つける方法
- 30. gitでファイルの最初のコミットを見つける
'git log -1'を試すと、選択したブランチの最後のコミットの詳細が得られます。同様に、 'git log -2'は最後の2つのコミットの詳細を与えるでしょう。 – Abhi
また、正しいマージベース(fork-point)を得られない場合に備えて、gitkを使って構造を視覚化し、コマンドスクリプトをチェックしてみてください。 –