- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在 mercurial 中,我习惯于执行 hg up 00
来彻底清理工作目录。
这会将工作目录重置为执行 hg init
后的状态。
git
中是否有任何等价物?
请注意,hg up 00
与 hg up 0
不同,后者更新到提交的第一个修订版,而是等同于 hg up null
,只需输入几个较短的字符。 *8')
另请注意,我不想只在 git 工作目录的根目录中执行 rm -rf *
,因为 git status
将显示所有文件已被删除。我只想将存储库更新到第一次提交之前的状态。遗憾的是,我通过网络和 git 手册进行的搜索并没有为我提供我需要的信息来解决如何在 git
中进行操作。
作为背景,我想将存储库留在原地,以便以后可以轻松 checkout 不同的提交。我想这样做的一个原因是我有一个非常大的存储库(实际上是一个 git svn 存储库),我不想再重新克隆它(这需要几天时间才能完成,而你不需要)应该克隆一个 gitsvn 仓库)。不过,我确实希望能够在不需要时释放工作副本占用的空间。
最佳答案
空修订版的等价物在 git 中称为裸存储库。 This search给出了该主题的粗略概述,可以找到将非裸仓库转换为裸仓库的不同方法 here .
与 hg 不同,没有简单的方法可以在裸仓库和非裸仓库之间切换。此外,您不应该推送到非裸存储库,因为推送会更改 git 的索引,但不会更新工作树。参见 Working with git from 2 laptops with no bare repo了解详情。
关于git - 如何彻底清理 git 工作目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4690763/
我是一名优秀的程序员,十分优秀!