假设有一个团队有4名开发人员。 我们还为我们的项目提供了一个中央存储库。 开发人员从中央存储库推送和拉取。 Here(在分散但集中的部分),它表示可以在团队成员本地存储库之间进行推/拉。
每个开发人员都会拉动并推动原点。但除了集中 推拉关系,每个开发人员也可以从中拉出变化 其他同行组成子团队......从技术上讲,这仅仅意味着什么 而Alice已经定义了一个名为bob的Git遥控器,指向Bob的 存储库,反之亦然
现在的问题是如何定义指向Bob的存储库的远程名称bob。 如果重要,开发人员可能会使用不同的操作系统。
答案 0 :(得分:3)
这是一个很常见的事情,比如 Alice和Bob需要一起处理某些功能。同时,开发应由不同的开发人员在不同的分支上进行。
简单的方法是:
应使用
执行推拉操作git pull origin sprint_1 and git push origin sprint_1
当完成更改并且sprint_1具有稳定代码时,它可以与其他分支合并。如果sprint_1上的代码已经走了很长一段路,建议重新分支分支而不是合并,以避免冲突或挑选。
答案 1 :(得分:2)
与GIT clone repo across local file system in windows类似
Per J.F.Sebastian回复:
$ git clone --no-hardlinks /path/to/repo
以上命令对您的目录使用POSIX路径表示法 git存储库。对于Windows,它是(目录C:/ path / to / repo包含 .git目录):
C:\some\dir\> git clone --local file:///C:/path/to/repo my_project
存储库将克隆到C:\ some \ dir \ my_project。如果省略 file:/// part然后隐含了--local选项。
答案 2 :(得分:2)
如果您在主机上建立了用户帐户并对存储库拥有访问权限,那么其他人可以通过SSH推送/获取,无论是否建立了命名的"远程"。
git push user@host:/path/to/repo branch
如果经常共享代码,可以设置命名的遥控器以记住服务器路径:
git remote add remotename user@host:/path/to/repo
如果共享涉及密切协调(可能是非常松散的安全性),那么你可以在" master"上启动短暂的git daemon
。根据需要:git equivalent of 'hg serve'?在这种情况下,上述共享命令仍然适用,但user@host:/path
将替换为git://host/
。另请参阅git daemon documentation。
或者,您可以设置一个单独的专用存储库用于中间共享:How do I setup a staging repository in git?
答案 3 :(得分:1)
如果两个repos共享一个文件系统命名空间,你可以直接使用文件系统路径。否则,开发人员可以轻松地运行本地git服务器,例如,一个VPN,其中访问已经可操作私有git daemon
命令将提供正常的提取,否则您可以在专用端口上设置ssh访问,以通过更多的工作实现相同的效果。
答案 4 :(得分:1)
我想做类似的事情,在我的情况下,我正在寻找一种简单的方法来同步嵌入式系统上的项目(运行Linux)。以前我只是建立一个共享的互联网连接并从集中存储库中取出。但我发现这样的工作并不容易,有时我的互联网连接很差。
在下面的文章中,git daemon
的使用非常好地解释了这个问题。我将在这里简要介绍一下内容:
http://railsware.com/blog/2013/09/19/taming-the-git-daemon-to-quickly-share-git-repository/
为您的存储库设置以下别名以进行读取访问(服务)或读/写访问(集线器):
$ git config --global alias.serve "!git daemon --base-path=. --export-all --reuseaddr --informative-errors --verbose"
$ git config --global alias.hub "!git daemon --base-path=. --export-all --enable=receive-pack --reuseaddr --informative-errors --verbose"
然后在主机上,只需从要共享的存储库所在的目录中执行git serve
或git hub
。现在在客户端上,可以执行git clone git://x.x.x.x/path/to/repo
来访问主机上的本地存储库!
对于Windows用户: