【问题标题】:Copy and paste only modified files while taking backup of old files in destination仅复制和粘贴修改过的文件,同时备份目标中的旧文件
【发布时间】:2018-08-12 07:03:45
【问题描述】:

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

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

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

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

【问题讨论】:

  • 7z 命令可以处理 zip 存档,man 7z 并按照面包屑导航。

标签: git shell unix command-line


【解决方案1】:

我将压缩文件解压缩到一个临时文件夹中。然后我使用了命令:- cp -a 。这仅复制和替换了更改的文件,同时保留了其他文件。

问候,

-禁止

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 1970-01-01
    • 2019-11-18
    • 1970-01-01
    • 2013-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多