使用Git命令检查合并后哪些文件发生了更改

zi8p0yeb  于 2023-02-14  发布在  Git
关注(0)|答案(1)|浏览(308)

我可以使用哪个终端命令来检查哪些文件在没有squash选项的情况下进行快进合并后发生了更改?
我需要它的CI,所以我不能执行一个命令,并检查自己的一个特定的提交SHA和使用它后,检查更改。
让我们举一个例子:
我从master创建develop分支,我做了我的更改(5次提交),我合并developmaster没有squash选项。在这一点上,我想执行一个命令,返回我所有更改的文件(比较合并前后)

    • 我不能在命令中使用特定的提交哈希,因为它是针对我的CI的,而且我事先不知道哈希是什么**

我试过了

  • git diff --name-only HEAD~,但它将HEAD与前面的提交进行比较,并且在快进而不挤压的情况下,它不一定是合并前的提交。
  • @eftshift0建议git diff --name-only HEAD@{1},但它在CI中不起作用
xfb7svmp

xfb7svmp1#

我猜你可以用途:

git diff --name-only HEAD~

假设您在合并后没有去任何地方(并且合并已经完成)。
如果有快进,您可以在合并后立即执行此操作:

git diff --name-status HEAD@{1}

这应该也适用于非ff的场景,但总体上有点不稳定(如果你在合并后移动,引用将指向不同的提交)。

相关问题