繁体   English   中英

如果存在合并,如何显示自上次提交以来已更改文件的列表?

[英]How to show a list of changed files since last commit if there was a merge?

我一直在使用以下命令来查看自上一次提交以来已更改的文件列表,并且在大多数情况下都可以使用。

git show --oneline --name-only HEAD | tail -n +2

但是,请考虑这种情况。

该存储库被克隆到两个地方。 人员A从仓库中删除了一个名为foo的文件,并将其更改推送到仓库中。 在那个人b之后,从仓库中删除了一个名为bar的文件,并尝试增加他的更改。 他被告知必须拉。 他拉力,他必须合并。 合并后,他推高了自己的更改。

上面的git show命令将不显示有关文件foo或bar的任何信息。 我可以使用类似的命令

git show --oneline --stat | head -n -1 | tail -n +3 | awk '{print $1}'

但这只会列出文件foo而不会列出bar。

我可以运行什么git命令来显示文件栏已更改?

git show object显示对象,例如提交。 在您说明的情况下,添加两个文件和合并是在三个单独的提交中进行的。 一种简单的查看方法是使用git log并使用标志n限制以前的提交次数:

git log --oneline --name-only -n 3

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM