如何在版本控制GIT中处理这种情况

时间:2014-08-29 12:54:30

标签: git version-control bitbucket

您好我打算使用GIT和bitbucket对我的系统进行版本控制。这是我计划好的结构。

enter image description here

  1. 我将在trunk中完成我的所有新工作,所有代码都在bitbucket中。
  2. 当我想要发布时,我会将我的主干复制到QA分支,所有代码都是bitbucket。
  3. 在QA完成后,我在bitbucket中创建了一个标签。
  4. 来自QA分支的
  5. 我做生产分支

    使用git和bitbucket我可以管理我的代码。控制我的版本

  6. 我的问题是这些

    1. 我的Devleopment服务器,我想保留中继代码在bitbucket之外。
    2. 我想保留QA分支代码的QA服务器在bitbucket之外。
    3. 那么如何才能将bitbucket内的数据与QA服务器和Developement服务器同步更新。

      当我将代码提交到bitbucket中的trunk时,我需要更新我的开发服务器代码。也 当我将代码提交到bitbucket中的QA分支时,我需要更新我的QA服务器代码

      有可能吗?

      my project is PHP 
      My QA and Development servers using LAMP.
      

1 个答案:

答案 0 :(得分:1)

根据您的具体设置,您可能会使用BitBucket's hooks自动通知您的QA服务器已检入更改,然后它可以从BitBucket中提取新数据。


另一种方法是从您的开发机器中推送您的代码。您的QA服务器上可以有一个Git服务器,您可以将代码推送到。通常我会通过2"遥控器来处理这个问题。在Git中设置。然后你可以:

git checkout qa-branch  # switch to QA branch
git merge trunk  # bring code changes from trunk into qa branch
git push bitbucket qa-branch  # save qa branch to bitbucket
git push qaserver qa-branch  # update qa server

在QA服务器上,您可以使用Git hooks来响应正在推送的代码,并运行脚本来部署代码。

认为这基本上是Heroku does when you push code to them