如何删除冗余的GitHub条目

时间:2017-01-18 19:01:54

标签: git github team-explorer

如下所示,由于尝试创建GitHub存储库的错误,我现在在GetHubVisualStudio\WallE中有一个WallE条目,在GitHubVisualStudio\WallE\WallE中有另一个。

我已经尝试了所有我能想到的东西来摆脱这个重复的条目。我甚至删除了整个文件夹并从GitHub重新克隆它,冗余条目刚刚回来。我如何摆脱这个额外的?

Redundant GitHub entry

更新:浏览Process Monitor,看起来这可能是Visual Studio缓存存储库位置并且无法清除错误条目的情况。由于他们已将存储库条目从标准注册表项移动到应用程序配置单元,因此除非有可以某种方式访问​​应用程序配置单元的注册表编辑器,否则无需执行任何操作。

2 个答案:

答案 0 :(得分:0)

从索引和树中删除文件

我不知道您的GUI工具,但是从命令行(假设Cygwin或Git-Bash)您可以删除目录,如下所示:

cd C:/Users/rmorl/Documents/GitHubVisualStudio/WallE
git rm -rf WallE
git commit -m 'Remove duplicate directory tree.'
git push

清除工作树

如果仍有问题,请确保先备份。然后,您可以查看合并命令,如:

  • git ls-files # list files that Git knows about
  • git clean -fdx # purge working tree of files/dirs not in the Git index

最后的度假村

如果所有其他方法都失败了,请安装BFG之类的工具在您的存储库上执行手术,然后将结果强行推回上游。

答案 1 :(得分:0)

我的第二个理论是,它是Visual Studio中缓存的一个创建问题的位置,结果证明是正确的。这个解决方案不适合胆小的人。 :)

  1. 关闭所有Visual Studio实例。
  2. 找到privateregistry.bin。对我来说,这是%LOCALAPPDATA%\Microsoft\VisualStudio\15.0_3c403b8b
  3. 运行regedit.exe。
  4. 单击允许加载自定义配置单元的键,例如HKEY_USERS。
  5. 单击“文件”,“加载配置单元”,然后加载privateregistry.bin。 (如果它不会打开,你可能需要发挥创意。我选择复制它并加载它,然后将其复制回来,此时,文件不再受到保护。重新启动也可能是答案。)
  6. 导航至Software\Microsoft\VisualStudio\15.0_3c403b8b\TeamFoundation\GitSourceControl\Repositories
  7. 删除您在那里找到的所有无效条目。
  8. 卸载配置单元,然后退出Regedit。
  9. 如果您必须在步骤5中获得创意,请将文件复制回原始文件。
  10. 下次打开Visual Studio时,将不再显示无效条目。