gpt4 book ai didi

linux - 如何在没有 rm -rf 大锤的情况下删除单个 git 存储库克隆?

转载 作者:可可西里 更新时间:2023-11-01 11:52:00 25 4
gpt4 key购买 nike

简单地使用 rm -r 删除 git 仓库是不可能的,因为 .git 目录包含很多写保护文件。我有权限删除这些,因为我是所有者,但不可能一一确认它们。

现在,可以通过将 -f 标志添加到 rm 来在一条命令中完成所有操作,但这意味着我失去了所有防止删除 protected 内容的保护有充分的理由。例如,另一个带有我尚未推送的本地分支的 git 存储库。

但这似乎是唯一的方法,所以我发现自己最近经常做rm -rf,但我总是对此感到不安。有没有更好的方法来摆脱单个 repo 克隆,它不会询问数千个单独的文件,但如果我尝试删除单个 repo 以外的东西,失败?理想情况下,在实际删除之前,它还应该检查我要删除的 repo 是否有一些最新的远程。


我不太明白这个问题有什么不清楚的……是这样的:

我如何删除包含所有内容的存储库,使用的命令不会同时核对任何其他包含写保护文件的目录?

最佳答案

首先,您收集所有垃圾对象:

git gc --prune=all

然后只剩下一个pack文件,是只读的,对应的pack index也是只读的。现在

cd ..
rm -r repo

只会询问两次而不是数千次。

不过,这并不能防止删除已 checkout 的子模块。

关于linux - 如何在没有 rm -rf 大锤的情况下删除单个 git 存储库克隆?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43115197/

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