Удалите каталог постоянно от мерзавца

Нет, это не повлияет на исходный запущенный экземпляр - он уже загружен в память и не будет изменен.

48
задан R. Martinho Fernandes 1 August 2009 в 14:56
поделиться

4 ответа

На самом деле ни один из этих методов не помог мне. Я обнаружил, что наиболее надежным было просто вставить локально в другое репо:

git pull file://$(pwd)/myGitRepo

Это также избавит вас от хлопот с удалением старых тегов.

см. Историю в моем блоге: http://stubbisms.wordpress.com/2009/07/10/git-script-to-show-largest-pack-objects-and-trim-your-waist-line/

14
ответ дан 26 November 2019 в 18:54
поделиться

В книге ProGit есть интересный раздел Удаление объекта .

Он заканчивается следующим образом:

Ваша история больше не содержит ссылки на этот файл.
Однако ваш reflog и новый набор ссылок, который Git добавил, когда вы сделали filter-branch под .git / refs / original , все еще работает, так что вы придется удалить их, а затем заново упаковать базу данных. Вам нужно избавиться от всего, что имеет указатель на эти старые коммиты, прежде чем вы переупаковываете:

$ rm -Rf .git/refs/original
$ rm -Rf .git/logs/
$ git gc
$ git prune --expire 

( git prune --expire не является обязательным, но может удалить содержимое каталога из незакрепленных объектов)
Сделайте резервную копию всего перед выполнением этих команд, на всякий случай;)

32
ответ дан 26 November 2019 в 18:54
поделиться

git-filter-branch по умолчанию сохраняет старые ссылки в пространстве имен refs / original / * .

Вам нужно удалить их, и , затем , выполните git gc --prune = now

13
ответ дан 26 November 2019 в 18:54
поделиться

If you want to go the manual cleanup route, there are some more files that may also contain a ref to the position of your original branch before the git-filter-branch. For example, I filtered my "home" branch:

.git/info/refs:

179ad3e725816234a7182476825862e28752746d refs/original/refs/heads/home

.git/packed-refs:

179ad3e725816234a7182476825862e28752746d refs/original/refs/heads/home

After I removed those lines, gitk did not show the old commits any more.

3
ответ дан 26 November 2019 в 18:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: