确定 repo 当前正在合并哪个提交 (MERGE_HEAD)
Determine which commit the repo is currently merging (MERGE_HEAD)
假设我的内存保留非常糟糕,并且有一个处于尚未解决的合并冲突中间的存储库。
一个git status
会显示你有unmerged paths
的事实,但它不会显示这个合并冲突的MERGE_HEAD
commit/sha。
是否有一个内置的 git
cmd 选项,无需手动测试 .git
是否为文件或目录并按照子模块目录到 cat
MERGE_HEAD
文件到 git log
据我所知,可以在三个地方找到此信息。
首先,冲突标记会告诉你。
diff --cc one
index 1f7391f,a7453f0..0000000
--- a/one
+++ b/one
@@@ -1,1 -1,1 +1,5 @@@
++<<<<<<< HEAD
+master
++=======
+ feature
++>>>>>>> feature
这告诉我我正在将 feature
合并到 HEAD
。 git status
会告诉我 HEAD
是什么分支。
如果你 cat .git/MERGE_MSG
它会告诉你你正在合并哪个分支。
$ cat .git/MERGE_MSG
Merge branch 'feature'
# Conflicts:
# one
最后,cat .git/MERGE_HEAD
会告诉您要合并的 SHA。这可以变成带有 git branch --contains
.
的分支名称
cat .git/MERGE_HEAD | xargs git branch --contains
假设我的内存保留非常糟糕,并且有一个处于尚未解决的合并冲突中间的存储库。
一个git status
会显示你有unmerged paths
的事实,但它不会显示这个合并冲突的MERGE_HEAD
commit/sha。
是否有一个内置的 git
cmd 选项,无需手动测试 .git
是否为文件或目录并按照子模块目录到 cat
MERGE_HEAD
文件到 git log
据我所知,可以在三个地方找到此信息。
首先,冲突标记会告诉你。
diff --cc one
index 1f7391f,a7453f0..0000000
--- a/one
+++ b/one
@@@ -1,1 -1,1 +1,5 @@@
++<<<<<<< HEAD
+master
++=======
+ feature
++>>>>>>> feature
这告诉我我正在将 feature
合并到 HEAD
。 git status
会告诉我 HEAD
是什么分支。
如果你 cat .git/MERGE_MSG
它会告诉你你正在合并哪个分支。
$ cat .git/MERGE_MSG
Merge branch 'feature'
# Conflicts:
# one
最后,cat .git/MERGE_HEAD
会告诉您要合并的 SHA。这可以变成带有 git branch --contains
.
cat .git/MERGE_HEAD | xargs git branch --contains