对目标中的旧文件进行备份时,仅复制和粘贴已修改的文件

我在一个zip文件夹中有许多文件。zip文件包含文件夹,这些文件夹也包含文件。这些文件是以下命令的结果:

git archive --output=deploy.zip HEAD $(git diff --name-only HEAD HEAD~1 --diff-filter=ACMRTUXB)

这意味着zip文件夹只包含在提交头和头~1之间更改的文件。

我想要做的是将文件和文件夹复制并粘贴到一个目标位置。目标还包含多个文件夹和文件。我只想替换修改过的文件,并备份替换的文件。简单地使用cp命令是行不通的,因为它只会用更改后的文件替换整个文件夹。也就是说,如果压缩文件夹包含一个文件配置,而目标文件夹包含/config/ n个文件,如果我使用简单的复制和粘贴,配置文件夹本身将被替换为只有一个文件。请注意,压缩后的文件夹deploy.zip包含多个这样的文件。有什么想法或建议吗?

转载请注明出处:http://www.ommtl.com/article/20230526/1221253.html