Git生产/登台服务器工作stream程

目前我的网站(生产服务器)已经有很多代码了。 现在我想开始为我的项目使用Git,并为我的团队设置一个登台服务器。 有人可以给我任何build议吗?

这是我脑海中的画面:

Production - Production server which already have codes ↑ Staging - New staging server, will install Trac too ↗↙ ↖↘ Developer1 Developer2 - Local development 

我的问题是,我该如何开始?

以下是我脑海中的一些步骤:

  1. 在生产服务器上做一个git init (这是安全的吗?)
  2. clone生产回购clone到登台服务器
  3. 开发人员clone这个回购从分期clone到他们的本地机器
  4. 完成更改后将文件push送到登台服务器
  5. 准备就绪时, push所有内容push送到生产中

这个工作stream程是否合理,还是有更好的方法呢?

如果我只想更改一个文件呢?

在这个过程中起源/主人有什么关系呢? 谁是起源? 我会最终有多个起源?

另外,在这种情况下,开发人员何时应该使用branch

最好使用master分支仅用于生产和开发分支的分期。 每个开发人员都应该创build本地分支来添加新function,然后与开发分支合并。 如果你是一个git的新手,尝试使用 – http://github.com/nvie/gitflow还有一个很好的图片描述git分支模型; – http://nvie.com/posts/a-successful-git-分支模型/

你的build议看起来不错,但我不会让开发人员直接推送到登台服务器。 相反, 集成人员应仔细检查分支并将其纳入主分支(如果您使用bUgbuild议的gitstream模型,则开发分支)。*同一个人将推送到分段服务器。

* 整合者 :“ 一个相当中心的人在一个团队项目中扮演一个整合者的angular色,接受他人的改变,审查并整合他们,并将结果发布给其他人使用…… ”


1.在生产服务器上做一个git init(这是安全的吗?)

是的,这是安全的,但你当然必须在这个回购设置非常限制的权限。 如果我还没有,我可能会开始把整个网站curl到一个本地光盘上。

2.将生产回购克隆到登台服务器

你可能应该有一个“中央”回购单独生产和登台服务器。 那个可以根据需要克隆和推送。

3.开发人员将暂存器中的repo克隆到本地机器上

4.完成更改后将文件推送到登台服务器

5.准备好时,把所有东西都推到生产中去

用“central”代替“staging”,我认为你没问题,但更大的问题是你如何使用分支和合并,正如bg指出的那样。