GitHub团队使用

时间:2013-03-27 03:47:02

标签: git github merge

您好我刚刚浏览了GitHub Learn-in-15 minutes tutorial。 GitHub似乎很好,很容易拾取。我不明白的一件事是在团队环境中与可能编辑相同文件的人一起工作?

从我的理解

  • 将有一个远程仓库(origin),其中包含应用程序的最新文件。
  • 每个团队成员都会提取origin master
  • 每个团队成员都可以创建自己的本地分支编辑文件,提交分支并与其本地master合并。
  • 团队成员现在可以将master推送到origin/master

现在如果2个团队成员不编辑同一个文件会发生什么。

Origin V1

MemberA创建了V2并推送 起源现在V2

会员B仍有V1,但已经制作了V3并将其推出 不会将MemberA推送的更改回滚到原来的V1,因为

或者这是舞台和添加文件到舞台推进的地方吗?

IE它不会用你的推文'替换'所有文件..但只有你添加到你的舞台/提交的文件?

2 个答案:

答案 0 :(得分:4)

如果您尝试按下遥控器(示例中为origin),并且在尝试推送之前已更新该遥控器上的文件,则推送将被拒绝。您必须先从遥控器pull先解决所有冲突,然后才能推进。

否则,如果没有冲突,只需按一下master即可更新文件。请记住,这里有一个完整的过程。一个不是简单地推动掌握:-)(或合并)。对不起,我必须这样做。

One does not not simply merge into master

最简单的说,如果遥控器上的文件在您有机会推动之前已经更新,那么您将无法推送。如果您更改的文件未在遥控器上更改,则推送将成功。

基本流程需要经常进入您的分支,以使其与主人保持同步。

答案 1 :(得分:0)

Git非常棒,因为它不会决定您的工作流程 - 从产品所有者的想法到开发人员的手指,测试和生产所采取的步骤。相反,它只是识别跟踪事物的方式。因此,您的过程可以成为您想要的。有些人发现这种开放性太局限了 - 你如何通过空白页?

Git-Flow是分支和合并方法的命名约定,它通过各个阶段跟踪开发过程。它非常适合提供团队合作所需的结构。它通常面向特定的定期发布,因此可能对某些人来说太过分了。

(还有一个Git-Flow的{git-plu here。)

如果Git-Flow过多,您可能希望查看GitHub Flow用户仅从master分支,构建功能,测试并合并回master。

最终,这些只是处理流程的惯例,您可以根据他们与团队文化的匹配程度,尽可能多地或全部地使用这些流程。