Git Workflow:在不推送到公共存储库的情况下在计算机之间共享代码

时间:2012-07-10 18:19:07

标签: git workflow

我在一家使用Git进行版本控制的公司工作。我们使用托管的repo服务(Beanstalk)作为我们的内部“公共”(我的意思是整个开发团队可访问)回购。我有两台计算机,通常用于编写代码。我喜欢使用Git的一些历史重写功能,特别是重新定位和修改提交,但我真的不喜欢在我将某些内容推送到已发布的分支后使用它们。然而,我需要能够在这两台计算机之间共享代码,最好是没有其他人。

我想要的是在两台计算机之间共享代码的简便方法,而无需与其他人共享。我考虑过Airdrop(两台电脑都是Mac)和ssh。在利用git的分布式特性的同时,建议的实现方法是什么?

3 个答案:

答案 0 :(得分:18)

你可以自由地在机器之间推送,获取和拉动,假设你们之间有ssh访问:

git push computer2:projects/prog HEAD:tmp

或者,如果您在计算机2上:

git pull computer1:projects/prog HEAD

git fetch computer1:prj/prog branch1:t1
git fetch computer1:prj/prog branch2:t2
git merge t1 t2

git fetch computer1:prj/prog branch1 branch2 branch3
git merge FETCH_HEAD

依此类推......有关更多示例,请参阅git help fetch

答案 1 :(得分:1)

我不明白为什么你不能创建在远程仓库上明确表示的临时工作分支,但是如果你想要一个替代方案并且两台计算机都通过网络连接并且可以通过ssh访问,你可以设置或者两者都作为额外的遥控器,并在任何方向从一个推到另一个。虽然因为你不想推向错误的遥控器,但第一次就把它弄好可能会让人感到困惑。

答案 2 :(得分:0)

您可以在其中一台计算机上运行即时git服务器,使用git-daemon或类似的东西:https://gist.github.com/1525217