我想在两个标签之间做一个比较,并在这两个标签之间提交更改。你能告诉我命令吗?
egdjgwm81#
$ git diff tag1 tag2
或显示它们之间的日志:
$ git log tag1..tag2
有时,只查看已更改的文件列表可能比较方便:
$ git diff tag1 tag2 --stat
然后查看某个特定文件的差异:
$ git diff tag1 tag2 -- some/file/name
标签只是对最近一次提交的引用,所以你是在比较它们之间的提交。(Make请务必先执行git pull --tags)此外,一个很好的参考:https://git-scm.com/docs/git-diff
git pull --tags
am46iovg2#
如果源代码在Github上,你可以使用他们的比较工具:https://help.github.com/articles/comparing-commits-across-time/
zu0ti5jz3#
对于并排可视化表示,我使用git difftool,并将openDiff设置为默认查看器。示例用法:
git difftool
openDiff
git difftool tags/<FIRST TAG> tags/<SECOND TAG>
如果只对特定文件感兴趣,可以使用:
git difftool tags/<FIRST TAG>:<FILE PATH> tags/<SECOND TAG>:<FILE PATH>
顺便说一句,如果您对diff ing分支感兴趣,可以将tags/<TAG> s替换为<BRANCH> es。
diff
tags/<TAG>
<BRANCH>
sh7euo9m4#
正如@Nakilon所说,他们是一个内置在github中的比较工具,如果你使用的是这个工具的话。要使用它,在repo的url后面加上“/compare”。
6ljaweal5#
2个标记之间的插入/删除次数(合并标记之间的所有提交,例如,1个文件在标记之间更改/提交6次)
git log --numstat --format='' v1.0..v1.1 | awk '{files += 1}{ins += $1}{del += $2} END{print "total: "files" files, "ins" insertions(+) "del" deletions(-)"}' total: 6 files, 57 insertions(+) 12 deletions(-)
标记之间的差异,例如,同一文件在标记v1.0和v1.1上的差异
git diff --shortstat v1.0 v1.1 1 file changed, 50 insertions(+), 5 deletions(-)
只是为了说明diff(有点类似于vimdiff)的统计信息,以及两者之间所有提交的统计信息是不同的。
vimdiff
5条答案
按热度按时间egdjgwm81#
或显示它们之间的日志:
有时,只查看已更改的文件列表可能比较方便:
然后查看某个特定文件的差异:
标签只是对最近一次提交的引用,所以你是在比较它们之间的提交。
(Make请务必先执行
git pull --tags
)此外,一个很好的参考:https://git-scm.com/docs/git-diff
am46iovg2#
如果源代码在Github上,你可以使用他们的比较工具:https://help.github.com/articles/comparing-commits-across-time/
zu0ti5jz3#
对于并排可视化表示,我使用
git difftool
,并将openDiff
设置为默认查看器。示例用法:
如果只对特定文件感兴趣,可以使用:
顺便说一句,如果您对
diff
ing分支感兴趣,可以将tags/<TAG>
s替换为<BRANCH>
es。sh7euo9m4#
正如@Nakilon所说,他们是一个内置在github中的比较工具,如果你使用的是这个工具的话。
要使用它,在repo的url后面加上“/compare”。
6ljaweal5#
2个标记之间的插入/删除次数(合并标记之间的所有提交,例如,1个文件在标记之间更改/提交6次)
标记之间的差异,例如,同一文件在标记v1.0和v1.1上的差异
只是为了说明
diff
(有点类似于vimdiff
)的统计信息,以及两者之间所有提交的统计信息是不同的。