2017-10-10 40 views
0

是否有任何软件可以在两次提交到文件夹之间收集所有更改的文件?我需要此功能来创建更新补丁。在两次提交之间收集所有更改的文件

我目前的解决方案是创建两个版本标签并查看它们之间的差异。然后,我手动收集已更改的文件。这是非常低效且容易出错的,因为有100多个已更改的文件!

是否有一个软件可以收集两个提交之间的所有更改的文件?

更新:我正在寻找一种软件,可以在GUI界面中为我提供此功能。是否可以在不触摸命令行的情况下执行此操作?

+0

https://stackoverflow.com/a/39764481/7034621 – orhtej2

+1

这里的脚本从项目我曾经工作过:https://github.com/themanaworld/tmw-tools/blob/master/client/make-updates – o11c

+0

你不需要创建标签。任何可以使用标签的命令,都可以使用提交哈希。并尝试获取文件列表:'git diff --name-only - '。或者你可以申请'git diff - >/tmp/changes.patch' – Mort

回答

0

你不需要创建任何标签,你可以使用提交散列。

使用--name-only --format=""您可以获取提交更改的所有文件名。于是,一些简单的shell命令可以给你的文件的唯一列表:

$ git log <start>..<end> --name-only --format="" | sort | uniq 

如:

$ git log ad5b4ee5d43..90c1172a913 --name-only --format="" | sort | uniq 
+1

但是这只显示文件名,你必须自己复制。 – orhtej2

+1

@ orhtej2请求不够明确,道歉。为什么不使用'git format-patch'? – Mureinik

相关问题