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

kay*_*yue 107 git production staging dev-to-production

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

这是我脑海中的画面:

        Production        - Production server which already have codes
            ?             
         Staging          - New staging server, will install Trac too
         ?? ??          
  Developer1  Developer2  - Local development 
Run Code Online (Sandbox Code Playgroud)

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

以下是我的一些步骤:

  1. git init在生产服务器上做(这样安全吗?)
  2. clone 从生产到登台服务器的repo
  3. 开发人员clone从登台到本地机器的回购
  4. push 完成更改后,文件到登台服务器
  5. 当分段准备就绪时,push一切都要生产

这项工作流程是否有意义,或者有更好的方法可以做到这一点?

如果我只想更改一个文件怎么办?

origin/master在这个过程中是否与它有关?谁是起源?我最终会有多个起源吗?

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

bUg*_*Ug. 58

最好只将master分支用于Staging的Production and development分支.每个开发人员都应创建本地分支以添加新功能,然后与开发分支合并.如果您是git的新手,请尝试使用 - http://github.com/nvie/gitflow还有描述git分支模型的好图片 - http://nvie.com/posts/a-successful-git-分支模型/


Fel*_*xyz 18

您的建议看起来不错,但我不会让开发人员直接推送到登台服务器.相反,集成商应仔细检查分支并将它们合并到主分支(或开发分支,如果您使用bUg建议的git流模型.)*同一个人将推送到登台服务器.

*集成商:" 作为集团项目集成商的一个相当核心的人接受他人做出的改变,审查和整合他们并公布结果供其他人使用...... "


1.在生产服务器上执行git init(这样安全吗?)

是的,这是安全的,但您当然必须对此回购设置非常严格的权限.curl如果我还没有它,我可能会从整个网站开始到本地光盘.

2.将repo从生产克隆到登台服务器

您可能应该有一个与生产服务器和登台服务器分开的"中央"存储库.可以根据需要克隆和推送.

3.开发人员将登台的repo克隆到本地计算机

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

5.当准备就绪时,将所有内容推送到生产中

将"staging"替换为"central",我认为你没问题,但更大的问题是如何使用分支和合并,正如bUg指出的那样.

  • 1:为了使Git repo在生产中安全,请确保在里面添加一个带有"Deny All"的.htaccess文件. (9认同)
  • 2:Felixyz的"中央"回购指的是裸回购.使用--bare命令创建一个裸仓库. (2认同)