gpt4 book ai didi

git - `git push --mirror` 的对面?我如何取回我的 repo 协议(protocol)?

转载 作者:太空狗 更新时间:2023-10-29 13:15:27 25 4
gpt4 key购买 nike

我在使用 git push --mirror 将备份副本制作到裸仓库中取得了巨大成功。但是在 SO 和其他地方搜索之后,我找不到用所有分支在本地克隆东西的方法。我不想使用 git clone 因为我不想我的本地 repo 了解裸 repo 。如果我使用 git pull 它只会关闭 HEAD 分支。

猜测:

git pull /data/Dropbox/backup/that_stuff.git *

当然,我无处可去。

我如何重新获取包含所有分支的整个存储库?我意识到我可能只是将裸存储库复制到我的 .git 目录,但这似乎是个坏主意。

最佳答案

尝试 git fetch 而不是 git pull

git pull在那里获取分支并将其 merge 到本地分支,尝试将所有远程分支 merge 到本地分支没有多大意义。

$ git fetch a-repo_url

上述命令从远程 refs/heads/ 复制所有分支命名空间并将它们存储到本地 refs/remotes/remoteRpo/命名空间,除非 branch.<name>.fetch选项用于指定非默认 refspec。
尝试:

$ git fetch a-repo-url +refs/heads/*:refs/heads/*

可以强制获取所有分支的所有头。
看这个SO question .


OP yar报告:

git pull /data/Dropbox/backup/mjdj.git/ +refs/heads/*:refs/heads/*

有效。

关于git - `git push --mirror` 的对面?我如何取回我的 repo 协议(protocol)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2213689/

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