我从 git 部署到 FTP 服务器的正常过程是这样的:
git status
git add .
git commit -m "消息"
zip update.zip $(git diff --name-only HEAD^)
创建一个 zip 文件。git push origin master
创建的 zip 文件是所有更新文件及其路径的列表。
我想做一些类似的事情,创建一个具有相同内容的 zip 文件,但在文件被更改之前列出文件(因此每个文件的先前提交)。这样,如果任何文件有任何问题,我都可以快速恢复更改。
有什么建议吗?
最佳答案
首先,不是你的zip update.zip $(git diff --name-only HEAD^)
你可以使用 git archive --format=zip -o update.zip
如果您的文件名中有空格,这不会失败。此命令还需要 <tree-ish>
参数是树或提交以生成存档。
我不太了解您要实现的目标,但我会考虑使用类似 git-ftp
的(相当复杂的)工作流程.
关于linux - 从 repo 创建文件的 zip 文件以用于还原目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45081670/