Как удалить лишнюю запись GitHub

Как вы можете видеть ниже, из-за неудачной попытки создать репозиторий GitHub у меня теперь есть одна запись WallE в GetHubVisualStudio\WallE и еще один в GitHubVisualStudio\WallE\WallE,

Я перепробовал все, что мог придумать, чтобы избавиться от этой дублированной записи. Я даже удалил всю папку и повторно клонировал ее из GitHub, а избыточная запись только что вернулась. Как мне избавиться от этого лишнего?

Избыточная запись GitHub

Обновление: просматривая Process Monitor, похоже, это может быть причиной того, что Visual Studio кэширует расположения репозитория и не дает возможности удалить неправильные записи. Поскольку они переместили записи репозитория из стандартной записи реестра в куст приложения, кажется, что ничего не поделаешь, если не существует редакторов реестра, которые каким-то образом могут получить доступ к кустам приложения.

2 ответа

Удалить файлы из индекса и дерева

Я не знаю вашего инструмента с графическим интерфейсом, но из командной строки (предположим, 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, для выполнения операции в вашем хранилище, а затем принудительно отправьте результат обратно вверх по течению.

Моя вторая теория о том, что это была кэшированная папка в 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, скопируйте файл поверх оригинала.

При следующем открытии Visual Studio недопустимые записи больше не будут отображаться.

Другие вопросы по тегам