Git处于分散模式:我们必须添加所有远程设备吗?我怎么知道该从哪个遥控器拔出?

Git处于分散模式:我们必须添加所有远程设备吗?我怎么知道该从哪个遥控器拔出?,git,Git,我一直在使用svn或git作为一个集中的组织(只有一个远程服务器,每个人都从那里拉,每个人都推) 我想知道,当我们在分散的组织中使用git时,它实际上是如何工作的 是否每个人都必须使用git remote add….手动添加所有其他人?包括当20个开发人员组成的团队成为21个开发人员团队时,每个人都需要添加新的开发人员,而新的开发人员必须添加20个其他开发人员 我的另一个问题是,我们如何知道在哪里推拉? 是否有一个系统可以检查所有远程pc中的最高级版本? 如果我做了一些工作,我会承诺,然后呢?我

我一直在使用svn或git作为一个集中的组织(只有一个远程服务器,每个人都从那里拉,每个人都推)

我想知道,当我们在分散的组织中使用git时,它实际上是如何工作的

是否每个人都必须使用
git remote add….
手动添加所有其他人?包括当20个开发人员组成的团队成为21个开发人员团队时,每个人都需要添加新的开发人员,而新的开发人员必须添加20个其他开发人员

我的另一个问题是,我们如何知道在哪里推拉? 是否有一个系统可以检查所有远程pc中的最高级版本? 如果我做了一些工作,我会承诺,然后呢?我必须推吗

非常感谢

每个人都必须使用git remote add手动添加所有其他人吗

不,因为这是在克隆远程回购时为您完成的

建议的工作流程是克隆一个“受祝福的”回购协议(类似于集中式工作流程),并从中/向中拉/推

A将始终指示是否要推送本地提交

没有什么可以阻止您添加同事的repo url,以便直接与他/她的repo进行交换,但最简单的工作流程仍然是将一个远程“原始”repo作为受祝福的repo

有关详细信息,请参见“”,其中说明了更复杂的工作流:

因为Git允许您拥有多个远程存储库,所以可以有一个工作流,其中每个开发人员都可以对自己的公共存储库进行写访问,对其他人的进行读访问

此场景通常包括代表“官方”项目的规范存储库。
要为该项目做出贡献,您需要创建自己的项目公共克隆,并将更改推送到该项目

然后,您可以向主项目的维护人员发送请求,以获取您的更改。
他们可以将您的存储库添加为远程存储库,在本地测试您的更改,将它们合并到其分支中,然后推回到存储库中


我认为链接的第二张图片更合适。“分布式”工作流是由维护人员完成的。谢谢您的回答,但是您的模式与集中式组织有何不同?因为你所展示的正是我们所做的,也是我所说的centralised@Krowar这就是为什么我在回答中提到“类似于”集中式工作流;)我的观点是:使用一个“凹凸不平”的工具不会强迫你增加遥控器的数量;你仍然可以使用一个,但是:1/你是完全自主的(即使没有网络),2/如果需要,你可以选择推送到另一个回购协议,而不是受祝福的回购协议(在这种情况下,你会在那时,并且只有那时添加一个远程回购协议)。@JanHudec True。我已经在答案中包含了它。好的,谢谢,所以集中化的工作流是唯一不需要集成经理的组织?每个团队都有一些结构。总有一个商定的基准,你需要拉。只有在为特定任务形成子团队时,才需要添加其他远程设备。但你永远不需要关心别人的分支机构。你为什么需要这个?