首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >没有集中式远程存储库的git

没有集中式远程存储库的git
EN

Stack Overflow用户
提问于 2016-10-31 11:19:40
回答 2查看 163关注 0票数 1

假设我们是该项目的10名程序员,使用git。假设我们不想使用远程internet (github)存储库,也不想使用远程网络集中的git存储库。

  • 我们现在怎么能同步?
  • 每个人都必须一个接一个地将其他程序员的存储库声明为远程存储库?
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-31 13:24:25

如果您不想使用专用服务器,那么总是有可能使用某个开发人员的本地存储库作为其他开发人员克隆的“源”。

使用SSH可以很容易地做到这一点:

  1. 在源计算机上设置SSH服务器。
  2. 给予每个开发人员SSH对机器的访问权限(或者使用单个帐户,或者使用共享帐户,例如" developer ")。
  3. 让每个开发人员从该机器克隆存储库。

通过SSH进行克隆可以如下所示:

代码语言:javascript
复制
git clone my-account@origin-machine:/full/path/to/repo/.git

origin-machine是保存原始存储库的机器,...where my- account 是用户帐户。

现在,每个开发人员都可以获取和推送更改,从而通过原始机器进行同步。

如果您愿意,可以以类似的方式与几台不同的机器同步,方法是设置更多的SSH遥控器,例如:

代码语言:javascript
复制
git remote add machine2 my-account@machine2:/some/other/path/to/repo/.git
git fetch machine2
...
git push machine2 my-new-branch

...etc。

但是,有一个:默认情况下,您可能不会将更改推送到当前正在远程机器上签出的分支(如果您尝试这样做,git会警告您,坦率地说,您是反正我也不想做)。因此,您必须想出一个避免这种情况的分支策略(例如,让所有开发人员在单独的特性分支上工作,而不是一个公共分支是一个好的开始)。

尽管如此,我强烈建议使用带有裸存储库的本地专用服务器(通常总是联机的,并且开发人员机器上的签出分支没有问题)。服务器不一定要花哨--像Raspberry这样简单的东西在一个小团队中就足够了(有一个简单的教程这里)。

票数 1
EN

Stack Overflow用户

发布于 2016-10-31 12:53:29

我想你会明白读正式参考的意思。为了节省您的时间,您应该考虑将一名开发人员提升为集成管理人员,该管理人员以自己为主要存储库。

或者,简单地设置一个内部git服务器(裸存储库,尽管我建议使用海泡石),这是我们在工作中所做的,备份和类似的东西都是免费的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40341140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档