Git 获取他们的提交哈希值

问题描述 投票:0回答:1

当 git 工作树在合并/rebase/cherry-pick 期间处于冲突状态时,可以通过多种方式获取单个文件的 ours/theirs/base 版本,例如

git checkout --ours/--theirs path/file
git show :n:path/file
,其中 n 为 1、2 或 3,参见例如Git:在合并期间获取我们/他们的文件内容

但是,我想获得 ourstheirs 提交哈希值 (SHA)。对于我们的来说,这很简单:

git rev-parse HEAD
。但对于他们的,我必须尝试
git rev-parse
MERGE_HEAD, REBASE_HEAD, CHERRY_PICK_HEAD, ...
...
可能更像
BISECT_HEAD
?)。有没有什么简单的方法可以简单可靠地获取所有场景的他们的提交哈希?

git git-merge-conflict
1个回答
0
投票

是否有任何简单的方法可以简单可靠地获取所有场景的提交哈希?

不要求有提交哈希值。 Git 已经从多个合并基础构建了一个基础版本来解析具有它们的合并,在某些工作流程中已经很常见有专门构建的

:1:$path

另外:任何在 Git 上还没有便利命令的人都可以使用

git update-index --index-info
--cacheinfo
--info-only
任意加载索引(与现有便利方式几乎相同)。

您可以

ls `git rev-parse --git-dir`/*_HEAD
并忽略 FETCH_HEAD 来获取遵循现有命名约定的所有命令
_HEAD
,并遍历其内容以查找匹配项。

© www.soinside.com 2019 - 2024. All rights reserved.