从脱机导出的Git存储库更新文件

时间:2015-06-04 16:28:29

标签: git version-control

让我先描述一下这个场景,所有这些都需要在不连接互联网的情况下进行。 Windows方法比Linux更受欢迎。

客户有我们的软件版本,由CD手工提供。在我们的存储库上进行了一定数量的推送之后,我希望客户端能够接收文件的这些更新,而无需重新传输所有文件。我只想提供存储库的副本,并让git将其旧文件更新为当前状态。不需要访问历史记录或分支,只需要复制每个文件的最新版本。

所以问题是,将单独的脱机文件更新为当前外部存储库状态的最佳(最简单)方法是什么?

我已经阅读了一些可能性,但我不理解它们的差异或能力或确切的过程和命令。此外,我发现的每个示例都使用https:来传输文件。

1)远程添加,远程更新,然后合并

2)克隆存储库然后用户将拉

3)git archive创建一个tarball

4)bundle似乎仅适用于未推送的提交。

如果可能的话,写出cmd命令也是非常有帮助的。

1 个答案:

答案 0 :(得分:0)

如果我理解您的情况,那么您可以使用git diff --patch <revision_of_customer> > latest_version.patch生成补丁文件,然后使用patch实用程序将其应用于客户方。此方法仅适用于文本文件。如果您的存储库中有二进制文件,您可以查看推荐的实用程序here