Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如果存在合并,如何显示自上次提交以来更改的文件列表?_Linux_Git_Version Control_Merge_Git Merge - Fatal编程技术网

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

Linux 如果存在合并,如何显示自上次提交以来更改的文件列表?,linux,git,version-control,merge,git-merge,Linux,Git,Version Control,Merge,Git Merge,我一直在使用下面的命令查看自上次提交以来发生更改的文件列表,并且在大多数情况下都可以正常工作 git show --oneline --name-only HEAD | tail -n +2 但是,考虑这种情况。 存储库被克隆到两个地方。人员A从repo中删除一个名为foo的文件,并将其更改推送到repo。之后,此人b从repo中删除一个名为bar的文件,并尝试推送他的更改。他接到通知说他必须拉一下。他拉了一下,必须合并。合并后,他将其更改推高 上面的gitshow命令不会显示关于foo或ba

我一直在使用下面的命令查看自上次提交以来发生更改的文件列表,并且在大多数情况下都可以正常工作

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

但是,考虑这种情况。

存储库被克隆到两个地方。人员A从repo中删除一个名为foo的文件,并将其更改推送到repo。之后,此人b从repo中删除一个名为bar的文件,并尝试推送他的更改。他接到通知说他必须拉一下。他拉了一下,必须合并。合并后,他将其更改推高

上面的gitshow命令不会显示关于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

git show object
显示提交等对象。在您解释的情况下,添加两个文件和合并发生在三个单独的提交中。查看它的一个简单方法是使用
git log
并使用标志
n
来限制以前提交的数量:

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