在GitHub和VSTS上托管git存储库

弗兰克·库萨诺

目前,我的项目托管在VSTS(Visual Studio Team Services)上,我也想将其托管在GitHub上。我喜欢VSTS,因为我在实习时就使用了VSTS,并且对它习以为常,但是我也喜欢GitHub的熟悉感觉,而且我知道也打算与我一起从事该项目的朋友会喜欢GitHub。

是否可以在两个地方托管代码,并在每个地方都进行相应更新,而不管将代码推送到何处?

例如,如果有人从GitHub克隆存储库,进行更改,然后将其推送到GitHub,我可以这样做,以便VSTS自动获取这些更改,反之亦然吗?

JDB仍然记得莫妮卡

简短而甜蜜的答案

技术上可行。但这有点像手腕上带着两块手表……您将很难保持它们同步,而且您将永远无法确定哪一个是“真实的”。我怀疑经过一两个月的尝试,您和/或您的团队自然会放弃其中一个,而仅使用另一个。

漫长的答案

Git本质上是有意分散的。服务器并不比单个计算机重要。您计算机上的存储库具有与VSTS和GitHub上的存储库相同的历史记录和相同的核心功能。

当然,问题在于,完全无政府状态会导致混乱和效率低下。总体而言,人类强烈喜欢等级制度和领导才能。因此,即使技术是去中心化的,我们也不是,而且我们倾向于聚在一起,选择一个特定的回购作为我们的真理来源。如果不在该回购中,则它不是“官方”。(即使存在多个存储库,个人也会忠于一个并且只有一个,而排斥其他所有对象。)

例如,在git成立之初,在没有托管解决方案之前,Linus Torvalds的个人Linux回购就是事实的源头。当然,您可以拥有自己的版本,但是每个人或多或少都认识到他的版本是最完整,最新,最有可能保持这种状态的版本,因此每个人都向他发送了拉取请求并基于新工作他的主人分支。

对于您的项目也是如此。您可以根据需要设置任意数量的托管解决方案,但是您会很快发现,对于每个开发人员而言,只有两个回购协议非常重要……他们的个人回购协议以及他们往来往返的回购协议(他们的“远程”)。您会发现这对您也是如此。保持VSTS更新所需的精力很快就会变得多余和不必要……您已经在GitHub上拥有了最新的仓库,而您的个人仓库仍然是您进行所有工作的地方,因此,为什么还要尝试保持第二个远程更新?

如果愿意,您可以尝试一段时间,而且我敢肯定,您可以使用一些巧妙的钩子使VSTS保持最新状态,但是随着时间的流逝,可能会付出很多努力和费用(如果没有钱的话)带领您放弃它,只使用GitHub。如果您真的非常喜欢VSTS,则应该设置它而不是GitHub。您以后可以随时进行迁移...使用git相对容易...但是您可能会发现,一次使一个远程活动对所有参与人员都更好。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章