作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
简单地使用 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/
我是一名优秀的程序员,十分优秀!