正确设置GIT分支以开发应用程序

时间:2015-10-24 12:52:18

标签: git version-control tfs

我从未担任过现在的职位,而且我被要求为我们的项目管理GIT存储库。虽然我知道没有单一的“正确方法”,但我收到了以下文章about the most successful git branching model

我想要遵循这个工作流程,因此对于我们的项目,我们需要以下分支:

master (包含当前在我们的生产环境中运行的代码) 暂存(包含当前在我们的暂存环境中运行的代码) 开发(包含始终反映下一版本中最新交付的开发更改的状态的代码)

我们的流程将涉及每个开发人员在sprint周期中分配任务。每个开发人员都将为从开发分支克隆的工作创建功能分支。他们将完成所需的工作,一旦完成,他们将把他们的分支合并到开发分支。

我们正在使用在TFS上运行的GIT。

我的假设(这是我需要确认的)是我应该在TFS中创建一个主存储库 - 让我们称之为JBenchView。之后我会有一个分支。我现在需要在同一个存储库中创建开发登台分支。这就是导致以下问题的原因。

  1. 我的理解是否正确?
  2. 如何创建开发登台分支,以便它们在存储库下显示IN TFS?创建这些分支的一步一步的过程是什么(即。我克隆Master然后使用git checkout -b branchName创建 master 的分支,还是有更快/更简单的方法)?
  3. 实际上是否有办法在TFS中创建这些分支?
  4. 我们尝试了一种失败的方法,似乎有一位开发人员正在使用GIT bash创建他的功能分支,另一位是使用Visual Studio创建他的功能分支。由使用GIT bash的开发人员创建的功能分支显示在存储库中,但使用Visual Studio创建的分支则不会。为什么会这样,以及如何在未来修复?

1 个答案:

答案 0 :(得分:2)

如果要从命令行执行所有操作,可以安装将简化步骤的gitflow脚本。在Visual Studio中还可以进行扩展。

你也可以使用有插件的GitExtensions(我写的;-))。

但是如果你采用这样一个复杂的工作流程,特别是对于新的git用户,只在你需要时创建分支,并在此之前不要创建分支。

对于第四点,差异肯定是视觉工作室的开发人员没有推动其新创建的分支!

PS:我不建议在visual studio中使用git,特别是初学者,因为GUI非常混乱......

PS2:我不建议直接使用gitflow,除非你真的需要它。您应该花时间了解每种分支的目标。看看github流程的开头......