使用git子树部署构建目录

时间:2013-08-14 15:04:23

标签: git deployment workflow web-deployment git-subtree

我在项目中使用Ant构建脚本来创建一个名为“publish”的构建目录 一旦我运行构建并使用新构建更新我的发布文件夹,我添加然后提交,最后将其推送到github上的远程仓库。

将pub文件夹添加到项目后,我在本地计算机上运行Yeoman建议的命令。

git subtree push --prefix publish origin deployment

在初始执行时,它将我的发布文件夹部署到自己的名为“deployment”的分支。

任何时候我再次运行构建,添加文件,提交文件并将文件推送到远程仓库,然后在本地再次运行该子树命令我会被拒绝。

! [rejected]        22cd5e0605fcc771615bdacbde9bd95582705c17 -> deployment (fetch first)
error: failed to push some refs to 'git@github.com:[org]/[repo].git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first merge the remote changes (e.g.,
hint: 'git pull') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

这种工作流程的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我认为最好使用grunt-build-control。需要花费10分钟进行安装,但工作方式就像魅力一样,整个构建文件夹部署到遥控器变为自动,完全版本控制和无痛。

现在也在Yeoman wiki btw。

中提到了它