gpt4 book ai didi

git - 无需直接连接即可同步两个 Git 存储库

转载 作者:行者123 更新时间:2023-12-05 03:01:19 25 4
gpt4 key购买 nike

我有两个 git 存储库,我需要在它们之间没有直接网络连接的情况下进行同步。

我不能按原样使用 git fetchgit push 因为它们都需要直接连接。补丁文件似乎也不是一个可行的选择,因为它们失去了提交树结构。虽然,我发现 git 在后台使用 git pack-objectsgit unpack-objects 来生成和使用包文件。

我能否以某种方式让 Git 为我生成该包文件(假设我提供了我想要的提交范围)然后使用它?或者也许有某种方法可以保留补丁中的结构?还是有其他方法?

谢谢

最佳答案

尝试 git bundle .

一个包作为一个只读的存储库。创建分支 master 的包,

git bundle create foo.bundle master

然后您可以将 foo.bundle 移动到另一个存储库所在的机器上,并读取/获取您需要的元数据。

cd <the_other_repository>
git checkout master
git pull <path_to_foo.bundle> master

# or maybe you want to cherry-pick a single commit
git fetch <path_to_foo.bundle> master
git cherry-pick <commit>

关于git - 无需直接连接即可同步两个 Git 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55971038/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com