我们的开发环境使用多个存储库作为整个构建系统的一部分。构建会根据您签出的存储库动态调整:如果您不需要构建特定组件,请不要克隆它。
然而,一旦你已经克隆一个组成部分,从构建删除它是有问题的:
git status会显示未提交的更改有没有更好的方法来删除工作目录的文件?类似于hg co null或 的东西p4 sync ...#none?
在发现类似的 问题并没有完全达到我想要的效果后,本文提供了答案:创建一个空分支。
git checkout --orphan empty
git rm -rf .
git commit --allow-empty -m "An empty working directory"
Run Code Online (Sandbox Code Playgroud)
当然,请确保您首先已将所有重要文件提交到您的存储库中。我已将此分支命名为empty,但您可以通过checkout命令为其指定任何名称。
设置完成后,您可以切换到任何分支以恢复文件:
git checkout master
Run Code Online (Sandbox Code Playgroud)
当您需要“删除”工作目录时,提交更改,然后运行:
git checkout empty
Run Code Online (Sandbox Code Playgroud)
这将删除所有跟踪的文件。如果您还需要删除未跟踪的文件和目录,请执行以下操作:
git clean -fdx
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
237 次 |
| 最近记录: |