假设我们是该项目的10名程序员,使用git。假设我们不想使用远程internet (github)存储库,也不想使用远程网络集中的git存储库。
发布于 2016-10-31 13:24:25
如果您不想使用专用服务器,那么总是有可能使用某个开发人员的本地存储库作为其他开发人员克隆的“源”。
使用SSH可以很容易地做到这一点:
通过SSH进行克隆可以如下所示:
git clone my-account@origin-machine:/full/path/to/repo/.gitorigin-machine是保存原始存储库的机器,...where my- account 是用户帐户。
现在,每个开发人员都可以获取和推送更改,从而通过原始机器进行同步。
如果您愿意,可以以类似的方式与几台不同的机器同步,方法是设置更多的SSH遥控器,例如:
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这样简单的东西在一个小团队中就足够了(有一个简单的教程这里)。
发布于 2016-10-31 12:53:29
我想你会明白读正式参考的意思。为了节省您的时间,您应该考虑将一名开发人员提升为集成管理人员,该管理人员以自己为主要存储库。
或者,简单地设置一个内部git服务器(裸存储库,尽管我建议使用海泡石),这是我们在工作中所做的,备份和类似的东西都是免费的。
https://stackoverflow.com/questions/40341140
复制相似问题