我是一个完全的git新手,但我一直在使用Git将Web应用程序轻松“上传”到我的生产服务器。这是我的工作流程: -
当我准备好时,在本地进行一些编码并提交master
分支
发布到生产我做: -
git checkout production
git merge
master
git push origin production
如果origin是生产服务器上的裸存储库,那么我有一个post-receive hook,它执行以下操作: -
git clone /dir/to/bare_repo /dir/to/production
cd /dir/to/production_dir
GIT_DIR=/dir/to/production/.git
git checkout -f production
最后的checkout命令会产生以下消息: -
设置分支生产以跟踪原产地的远程分支生产。交换的 到一个新的分支'生产'
然而,我在本地进行的更改未出现在/ dir / to / production
中任何建议都将不胜感激!
编辑:我想应该提一下,这些更改会在本地生成分支,就像生产时git merge master
一样。这是远程克隆的存储库上的结帐似乎不起作用
答案 0 :(得分:2)
使用git archive
并通过gzip util管道。