Git:通过邮件保持项目同步

时间:2010-02-01 10:26:11

标签: git

我正在个人电脑上开发一个项目(Macbook)。我正在使用git对它进行版本化。

我有另一台计算机(我在工作中使用的计算机),我想在白天开发相同的项目。我在github有一个免费帐户,所以我可以用它来保持工作同步到家和工作开发,但项目不是“公开的”。

那么,使用电子邮件作为同步工具的任何方式都可以使用git吗?

由于

5 个答案:

答案 0 :(得分:7)

您还应该查看git-bundle。来自帮助:

某些工作流程要求在一台计算机上的一个或多个开发分支在另一台计算机上进行复制,但这两台计算机无法直接连接,因此无法使用交互式git协议(git,ssh,rsync,http)。这个命令支持`git fetch`和`git pull`,通过在原始机器的存档中打包对象和引用来操作,然后在移动存档后使用`git fetch`和`git pull`将它们导入另一个存储库。一些手段(例如,通过sneakernet)。由于存储库之间不存在直接连接,因此用户必须为目标存储库保存的包指定基础:包假定基础中的所有对象都已存在于目标存储库中。

捆绑包是二进制文件,但它们通常很小,因为您不需要包含整个存储库并且它们已被压缩。

Git Magic也有一些示例用法。

答案 1 :(得分:6)

查看git-send-emailgit-format-patch

编辑:Pat的answer更好,因为它保留了提交ID。

答案 2 :(得分:3)

您可以使用小型便携式USB密钥来保存项目的主存储库。然后,您可以在家中和工作中更新并同步它。在我看来,这比尝试使用电子邮件管理更容易。

答案 3 :(得分:2)

Git有一些非常强大的工具可以自动制作补丁集,然后甚至可以为你发送补丁集。或者您可以在之后手动格式化它们。我会花一些时间阅读Git网站上的文档,以获取一些示例和信息。

答案 4 :(得分:2)

您是否考虑过使用电子邮件之外的其他内容来同步项目?如果允许您在工作中安装它,可以使用Dropbox在计算机之间同步git项目:

cd ~/Dropbox/git/
git init --bare my_project.git
cd ~/my_project/
git remote add dropbox ~/Dropbox/git/my_project.git
git push --mirror dropbox

由于~/Dropbox的内容在计算机之间自动同步,因此您可以简单地从/向两台计算机上的Dropbox存储库进行拉/推,这比使用电子邮件简单得多。