【发布时间】:2014-01-09 23:33:57
【问题描述】:
按照this article 的指示,我有一个接收后挂钩,目前显示为:
#!/bin/sh
git --work-tree=/home/user/example.com --git-dir=/home/user/example.com.git checkout -f
这运行良好 - 所有文件和目录都已部署。但是,我只想部署 example.com.git 中 Build 文件夹中的文件(顺便说一下,我使用的是 Hammer。)所以并不是所有的开发文件都可以在实时服务器上使用和查看。
问题:为了只签出/部署 Build 目录中的内容,我应该对上述 Git 命令进行哪些更改/添加?
更新: 在 cmets 中讨论之后,我得出以下结论,这适用于我的情况。
#!/bin/sh
git --work-tree=/home/user/example.com --git-dir=/home/user/example.com.git checkout -f master -- Build/
cd /home/user/example.com
cp -rRp Build/. .
rm -rf Build
【问题讨论】:
-
您最终不会在 .用你自己提供的答案?除了 Build/ 之外的所有东西都会在那里,不是吗?我认为@yanhan 的回答(使用 git checkout 的
参数)更好。 -
我尝试了@yanhan 的答案,它给出了一些 git 错误,而这个 ^ 答案没有给出任何错误,但也没有做任何工作。 Git 推送成功完成,但远程仓库仍然为空(未更改)。 ://
标签: git deployment