2014-08-28 73 views
-1

我依靠Github/Bitbucket /版本控制大师。版本控制场景

这种情况是我有一个DEV服务器和一个实时服务器。我已经创建了一个存储库,以便我可以保持版本控制的集中。在下面的图片中(暂时忘记使用案例..),我已经将LIVE和DEV服务器的两个副本放到了我的存储库中,这样我就可以从主服务器上实际操作,其中主服务器是主服务器,分支将是开发者服务器。因此,我对DEV服务器感到满意的任何更改,然后我将合并到主服务器(LIVE服务器)中。这就是我的想法。你会在这种情况下建议什么?

Representation of my repository

+0

不确定你的意思,“你会建议什么?”你有一个过程,所以使用它。 – meagar 2014-08-28 14:25:06

+0

@meagar我只是想知道你是否有比我更好的点子。也许可能会有比我更好的过程。这就是我想知道的。但我现在肯定会应用这个。 – Arty 2014-08-28 14:48:18

+0

'git merge'? – Hackerman 2014-08-28 19:01:53

回答

1

你似乎有文件夹VS分支机构,回购VS服务器和基本工作流程之间的混淆。没有本地回购与远程回购。 您描述的场景只有一个回购。您可以在本地主机上拥有本地工作副本,在生产服务器中拥有克隆,当然还可以在github或任何您想要的地方拥有远程工作副本。但工作副本仍然是镜像相同的回购

我相信会提供同样的目的,你们这

  • 开发服务器最简单的布局(在这个例子中,这将是你的本地主机)
    • 举行一个工作副本你的项目。例如在/home/user/project
    • 除合并之外,您将此工作副本保留在develop分支中。
    • 您提交,然后推送到你的出身遥控器,这是git://github.com/Arty/project.git
  • Web服务器
    • 它运行一个Web服务器(Apache时,Nginx的,等等)
    • Web服务器有两个虚拟主机
    • Vhost1有server_name dev.project.com和文档根目录是/var/www/dev_project
    • Vhost2有server_name www.project.com和文档根目录是/var/www/project
    • 这两个文档根都是git://github.com/Arty/project.git的工作副本,但第一个分支是develop分支,而第二个分支是master分支。
  • Github Remote ak.a.产地
    • 这一个不需要解释

添加新的功能,工作流将

  1. 你站在在/ home /用户/项目(cd /home/user/project
  2. 你是在develop分支(git checkout develop
  3. 你砍ÿ我们的更改,然后提交它们(git commit -a -m "my new feature"
  4. 你推到原点(git push origin develop
  5. 您登录到Web服务器(ssh dev.project.com
  6. 你站在位于/ var/WWW/dev_project(cd /var/www/dev_project
  7. 你从产地拉最近更改(git pull origin develop
  8. 您从您的Web服务器注销,并在/home/user/project当地
  9. 退后您确认您的变更作为 工作预计将在dev.project.com
  10. 如果他们不这样做,重复步骤3至8
  11. 如果是这样,你切换到主分支(git checkout master
  12. 您从开发(git merge develop
  13. 合并您解决冲突,如果有任何,并推到原点(git push origin master
  14. 您登录到Web服务器再次
  15. 你站在位于/ var/WWW /项目(cd /var/www/project
  16. 您从产地拉(git pull origin master
  17. 您确认您的制作网站www.project.com正在按照计划运行
  18. 您完成了,直到您想开始另一个功能。

还有很多更详尽的方案,但只要你不了解Git的内部工作原理,它们只会让你更加困惑。

对于分支方案,我一直在使用gitflow在一队的8名开发人员在过去的两年里,它完美的作品。再说一次,如果你一个人工作,这是你使用Git的第一步,你可能要等待拥抱gitflow之前。

+0

你是对的!我应该说的是“克隆回购”(本地主机)和“起源回购”,而不是我在我的图表上所做的。但是,感谢我将考虑这个问题的答案。干杯 – Arty 2014-09-03 08:37:43