如何在sneakernet环境中使用Git?

时间:2011-06-09 22:56:17

标签: git version-control msysgit

我的项目有许多测试PC,100%的网络外。我们使用USB驱动器也可以从这些PC传输文件。在这些PC的测试期间发生了一些开发。我们传输更新文件的拉链,其中“版本信息”以zip文件的名称编码。

我的问题是如何最好地使用Git管理项目办公室PC和测试PC之间的sneakernet文件传输(或repos,或什么?)。笔记本电脑用户通常会出现“正常”的“用例”,这些用户正在“离网”并在某个角落咖啡馆中开发,后来又重新上网。

有没有人有这种情况的经验?


另请参阅转移完整回购的git bundle create --all答案

4 个答案:

答案 0 :(得分:13)

git bundle可以轻松地将Git与未连接的计算机配合使用。

man page

答案 1 :(得分:6)

您还可以在USB驱动器上保留存储库的克隆。从网外PC“推送”到USB驱动器,然后从uSB驱动器“推送”到中央存储库。

最好让USB驱动器存储库具有自己的工作目录(也在USB驱动器上)。然后从网外PC“拉”到USB驱动器,并从USB驱动器“推”到中央存储库。当发生这种推动时,如果需要,您可以在USB驱动器上进行合并。

答案 2 :(得分:3)

到这里的读者可能也对using-git-on-usb-stick-for-travelling-code感兴趣,{{3}}有很多相似之处。它可能不适用于我的环境,其中有两个使用sneakernet使用/编辑动作(即两个独立的USB驱动器),但它是一种可能性。

这完全取决于您对传输驱动器的信任程度,以及当您没有插入工具时这些工具是否可以正常工作....

答案 3 :(得分:3)

我发现本教程比手册页更有帮助,因为它给出了Git如何检查传入包和目标存储库共享共同祖先提交的示例:

https://git-scm.com/book/en/v2/Git-Tools-Bundling