我有一个master,branch1和branch2。
我使用'git merge'然后'git mergetool'将delta(即master和branch2之间的更改)合并到branch1中。
现在我想在branch1下识别所有修改过的文件作为上述合并的结果,并将所有修改过的文件复制到一个单独的文件夹中发送给某人。
这样做的正确方法是什么?
谢谢! p / s:我的道歉,如果这是一个太微不足道的问题,我是GIT的新手
答案 0 :(得分:0)
您可以尝试:
git diff --name-only branch1^ branch1
# or :
git diff --name-status branch1^ branch1
解释:
通常,git diff [commit1] [commit2]
将适用于任何两个提交:
git diff branch1 master
git diff tag/v1.0 branch2
git diff eacf32bb8 branch1
# etc ...
使用--name-only
或--name-status
选项,git diff
只显示两次提交之间已修改文件的列表(使用--name-status
,它会添加一个在文件名前面加A, M or D
字母,表示它是A
dded,M
odified还是D
eleted
处理合并提交时,它有两个父项:
...*--*--*--*--A---M <- branch1
\ /
*--*--*--B
在上面的草图中,A
是M
的第一个父级,B
是其第二个父级。
branch1^
指定A
(branch1
的第一个父级),branch1^2
将指定B
(branch1
的第二个父级)。