2011-06-03 40 views
1

我正在git仓库之上建立一个自动构建。我想从主分支自动构建版本 - 我正在使用“git archive”构建沙箱 - 并且,根据构建是否成功,我想将“构建分支”推送到成功构建的版本。在没有本地回购的情况下使用“git归档”后自动推送“构建分支”

这个想法是,“构建”分支将始终可以从主机到达,也就是说,它始终是从“构建”到“主”的快进,所以我不创建任何对象,而不是甚至提交对象,我只是将一个已经存在的“ref”移动到另一个已经存在的提交对象。

我使用git归档的原因是在构建时正确应用属性“export-ignore”和“export-subst”。

所以,总结问题:

有没有办法来更新远程的Git仓库一个裁判 - 到提交已经在远程端 - 而无需对其副本?

daniel

回答

1

您将在您正在构建的位置已经拥有它的克隆。只需轻轻推一下HEAD:master即可。另外考虑标记来标记你的成功构建。

UPDATE:

Git是东西总是需要的时候你推的东西到远程发送的对象。如果你没有你不能推动的物体。也就是说,您可以通过拖放到共享目录提交SHA1提交,并在该另一台计算机上创建一个进程,并具有引用到分支中的回购推送的克隆。

希望有一些低级别的命令可以直接做到这一点,或者一种欺骗手段,但我还没有看到。

+0

正如我在帖子中说得非常清楚,我**没有克隆。我使用的是git archive,所以我可以使用“export-ignore”和“export-subst”属性。 – 2011-06-03 15:57:28

+0

你为什么不使用常规忽略?您应该从工作目录编译,也许应用涂抹/清除脚本以及您从工作目录中获得的所有其他功能。您仍然可以从那里导出以获取部署的工件。 – 2011-06-03 16:11:02

+0

请阅读原来的问题。如果你真的看过这个问题,你就会明白我想要的是避免同时拥有克隆和导出。我想从存档中创建,而不是从工作目录中创建。 – 2011-06-03 17:45:34

相关问题