我在生产服务器上设置了一个裸的git仓库,并使用post-receive钩子来部署我推送的任何内容:
#!/bin/sh
GIT_WORK_TREE=/path/to/webroot git checkout -f
部署我做
git push production
从我的工作站来看,一切都很好。但是如果我提交了有问题的代码并希望尽快撤销,以下步骤可行吗:
git push production [id of commit to revert to]:master
IE是否仍会正确地将所有内容部署到Web根目录中?
git push +<commit>:master
作为回滚命令非常好用,它将我的暂存目录保留在最新提交状态,以便我可以修复导致我需要回滚部署的任何问题。谢谢! - ryanraingit push production master
(与git push production +HEAD:master
相同)。 - Quinn Comendant