想知道是否可以了解git工作流程应如何运作?我100%确定我们当前的方法是完全错误的,因为它没有真正解决。如果我能解释一下我们目前的运作方式,如果有人能告诉我哪里出错了,那就太棒了。
我们有2名开发人员在Dev分支机构工作,并在Dev服务器上进行测试(这需要我们将我们正在处理的文件ftp到服务器上)。一旦测试并完成了更改,我们就会在生产分支上复制更改,这是ftp'd到实时服务器。这意味着我们必须跟踪我们所做的每一项改变。值得庆幸的是,Git很高兴能够提供这些信息,但我们并不知道我们已经在服务器上放了哪些文件等.Dev目前用于修复生产/现场的bug等,但很快就会用于新功能。两个分支都与其自己的服务器不同。
在我们开发的初期,我们对git相对较新,但感觉我们在投入生产时已经采取了一大步。
概述:
任何人都可以帮助我吗?
答案 0 :(得分:0)
让我们用一个简单的方式:
分支开发的初始开发已经开始: 一旦完成一个功能/特性的开发,你就签出一个分支说sprint1。
让一个独立的服务器说server1,克隆项目并checkout到sprint1分支并重启服务器。
现在,QA可以使用server1进行测试而不会有新的更改。
开发人员继续致力于开发分支。
一旦QA验证了更改,请从sprint1签出新分支生产并部署在新服务器上,称为server2。
不涉及手动复制或移动文件。
现在,当新的更改被推送到Dev分支时。转到sprint1分支并合并dev分支。所以现在sprint1有最新的代码供QA测试。
验证更改后,签出到生产分支并合并sprint1分支。 这种级别的代码推送不应该产生问题并使事情变得简单。如果解释有足够的清晰度,请告诉我。
请参阅Git branching and merging了解其工作原理。
答案 1 :(得分:0)
如果您在开发服务器上的dev分支中进行了更改,则需要在此分支中提交它们。然后,您将能够将此分支合并到您的生产分支中,并将此分支放在您的生产服务器中。
对于新功能,我认为使用分支机构是个好主意。它们意味着完成这项任务。然后你将它们合并到你的开发分支。
我建议你阅读这篇文章,其中详细介绍了一个很棒的工作流程:http://nvie.com/posts/a-successful-git-branching-model/。
答案 2 :(得分:0)