我依靠Github / Bitbucket /版本控制大师。
场景是我有一个DEV服务器和一个LIVE服务器。我已经建立了一个存储库,以便我可以集中控制版本控制。在下面的图片中(暂时忘记用例..),我已经将LIVE和DEV服务器的两个副本复制到我的存储库中,所以我几乎可以从主服务器上创建一个主服务器,其中主服务器是LIVE服务器和分支机构将是开发服务器。因此,我在DEV服务器中感到满意的任何更改,然后我将合并到主服务器(LIVE服务器)。这就是我的想法。在这种情况下你会建议什么?
答案 0 :(得分:1)
您似乎在文件夹与分支,repos与服务器和基本工作流之间存在混淆。没有本地仓库与远程仓库。 您描述的方案只有一个回购。您可以在localhost中拥有本地工作副本,在生产服务器中拥有克隆,当然还可以在github中或您想要的任何位置使用远程。但是工作副本仍然是同一个仓库的镜像。
我认为最简单的布局可以提供与你相同的目的
/home/user/project
develop
分支中。git://github.com/Arty/project.git
dev.project.com
,文档根目录为/var/www/dev_project
www.project.com
,文档根目录为/var/www/project
git://github.com/Arty/project.git
的工作副本,但第一个位于develop
分支,而第二个位于master
分支。添加新功能的工作流程将是
cd /home/user/project
)develop
分支(git checkout develop
)git commit -a -m "my new feature"
)git push origin develop
)ssh dev.project.com
)cd /var/www/dev_project
)git pull origin develop
)/home/user/project
本地dev.project.com
git checkout master
)git merge develop
)git push origin master
)cd /var/www/project
)git pull origin master
)还有更详细的方案,但只要你不了解Git的内部运作方式,他们只会让你更加困惑。
对于分支方案,过去两年我在一个由8名开发人员组成的团队中使用gitflow,并且它完美无瑕。再说一次,如果你单独工作并且这是你使用Git的第一步,你可能要等到拥抱gitflow之前。