如何突出显示在git重基期间在提交中在公共祖先之后修改的文件?

如何突出显示在git重基期间在提交中在公共祖先之后修改的文件?,git,rebase,githooks,gitkraken,Git,Rebase,Githooks,Gitkraken,在执行重新基址时,git通过执行自动合并来实现其“魔力” 即使没有冲突,我也希望在其他分支中修改的文件上得到警告 换句话说,如果我正在处理一个文件,我想知道我的团队中的其他人是否同时处理过同一个文件。这可能会暴露出在进行项目时缺乏沟通。 因此,我想要一种报告或警告 我想说的是,最糟糕的情况是没有冲突,因为git在需要我注意的文件上默默地重新调整我的修改 我不知道是否可以使用pre-rebase-hook实现,但我希望该解决方案能够像Gitkraken那样与git客户端集成 在某些git客户端上,

在执行
重新基址时,git通过执行自动合并来实现其“魔力”

即使没有冲突,我也希望在其他分支中修改的文件上得到警告

换句话说,如果我正在处理一个文件,我想知道我的团队中的其他人是否同时处理过同一个文件。这可能会暴露出在进行项目时缺乏沟通。 因此,我想要一种报告或警告

我想说的是,最糟糕的情况是没有冲突,因为git在需要我注意的文件上默默地重新调整我的修改

我不知道是否可以使用
pre-rebase-hook
实现,但我希望该解决方案能够像
Gitkraken
那样与git客户端集成

在某些git客户端上,我可以看到“
前方
”和“
后方
”的文件列表,我希望这两个文件的交叉点

我很肯定,我不是第一个问这个问题的人,但我找不到关于这个具体问题的任何答案


我希望我已经足够清楚了,谢谢

我知道如何用脚本检查文件列表,我不知道GitKraken是否有办法执行脚本并将其输出集成到GUI中


如果您运行的是
git-rebase-target
,git将重播当前提交和目标之间的合并基础之后的所有COMMMIT

下面是将计算合并基数的base命令,并在两侧列出已修改的文件:

base=$(git merge-base HEAD target)

# modified on the target branch :
git diff --name-only $base target
# modified on your current branch :
git diff --name-only $base HEAD
您可以使用grep查找两侧修改的文件:

base=$(git merge-base HEAD target)

git diff --name-only $base target | grep -f <(git diff --name-only $base HEAD)
base=$(git合并基头目标)
git diff——仅列出$base target | grep-f