gpt4 book ai didi

git - 是否可以清理裸仓库?

转载 作者:太空狗 更新时间:2023-10-29 12:47:47 24 4
gpt4 key购买 nike

我有一个裸露的公共(public)仓库。

问题是我已经使用它很长时间了,这意味着裸仓库中有很多垃圾。有成吨的死 Twig 、删除的标签等......

是否有一些命令可以清理裸仓库?有些人喜欢 git remote prune 却适用于相反的场景?

编辑:因为似乎有些困惑。这是我的设置:

DevelMachine1
^
|
v
MainDevelRepo <-> MainRepo -> PublicBareRepo (with a lot of junk) -> The World
^
|
v
DevelMachine2

最佳答案

在更多信息之后:

MainRepo -> PublicBareRepo (with a lot of junk) -> The World

那么问题就来了。偶尔您会从 MainRepo 推送到 PublicBareRepo,它现在包含不再有效且不应存在的内容。将来,请确保您只推送应该存在的分支。我想现在最主要的是从中删除分支,然后我不得不退回到我原来的答案(假设我们在谈论同一种垃圾)

git push PublicBareRepo :someBranch1
git push PublicBareRepo :someBranch2

从 OP 获得更多信息后:

似乎是 repo 设计导致了问题,--mirror 是解决这个问题的方法。如果 A 是开发人员将他们的东西推送到的主要裸仓库,并且如果 B 是公共(public)裸仓库,那么 B 应该是 A 的克隆,并带有 --mirror 选项。

需要做的是在 B 上执行“git remote update”(假设 B 已经是 A 的镜像),这样它会更新自己再次与 A 相同。


原答案:

如果你想删除远程仓库上的一个分支,你可以这样做:

git push origin :branchName

对于任何 ref 实际上也是如此,例如对于标签:

git push origin :tagName

关于git - 是否可以清理裸仓库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6008882/

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