如何将git repo转换为裸仓库

时间:2017-09-11 15:22:11

标签: git

使用简单git clone repo克隆存储库时,会自动检出主分支。如果在这个自动结账后,我想删除所有签出的文件并将克隆转换为裸克隆,我该如何实现?我可以修改.git文件夹中的配置来完成此操作吗?

附注:我知道在克隆期间指定--no-checkout-n标志会阻止检出HEAD并保持存储库裸露。如果我删除了检出的文件,运行git status时,这些文件将显示为已删除。

2 个答案:

答案 0 :(得分:2)

git clone --no-checkout没有提供裸存储库,只是将工作树和索引留空。在这样的克隆之后git status会说所有文件都已被暂存以进行删除。

裸存储库是core.bare = true的存储库(使用git clone --bare生成的裸存储库也没有任何远程引用)。您可以执行git config core.bare true来翻转此位。然后删除工作树和索引,并可能将目录从repo/.git重命名为repo.git

答案 1 :(得分:1)

我没有得到你的问题。

根据我的理解,如果您要清除存储库,那么在克隆之后删除您不想要和推送的文件。

如果要结帐到新分支,请使用以下命令:

git checkout -b your-new-branch-name