首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Git diff --仅名称并复制该列表

Git diff --仅名称并复制该列表
EN

Stack Overflow用户
提问于 2011-04-09 21:36:49
回答 6查看 162.7K关注 0票数 157

我只想获得两个修订版之间更改的文件列表,这很简单:

git diff -–name-only commit1 commit2 > /path/to/my/file

但是,如果我想将所有列出的文件复制到另一个地方,我应该写些什么呢?我需要复制的文件具有完全相同的目录结构。

例如,我修改并添加了文件:

/protected/texts/file1.txt
/protected/scripts/index.php
/public/pics/pic1.png

我希望在/home/changes/中包含所有这些更改和添加的文件:

/home/changes/protected/texts/file1.txt
/home/changes/protected/scripts/index.php
/home/changes/public/pics/pic1.png
EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-05-07 12:38:55

尝试下面的命令,我已经测试过了:

$ cp -pv --parents $(git diff --name-only) DESTINATION-DIRECTORY
票数 125
EN

Stack Overflow用户

发布于 2012-02-22 08:56:58

下面是一行代码:

列出更改的文件并将其打包为*.zip:

git diff --name-only | zip patched.zip -@

列出上次提交的更改文件并将其打包为*.zip:

git diff --name-only HEAD~ HEAD | zip patched.zip -@
票数 14
EN

Stack Overflow用户

发布于 2013-02-01 14:03:11

zip update.zip $(git diff --name-only commit commit)
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5605347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档