Я хочу очистить все капли и историю файлов, которые были ранее удалены (то есть больше не присутствуют в HEAD), в настоящее время я запускаю эти команды, но BFG кажется удалить все пятна, в том числе присутствующих в ГОЛОВЫ:Как очистить всю историю git и капли файлов, которые в настоящее время не присутствуют в HEAD с BFG
git log # Returns 1050 commits
git commit -a -m "Clean the old history and blobs with BFG"
java -jar bfg.jar --delete-files '*' # Delete all files not in HEAD
git log # Still returns 1050 commits, all empty
git diff 5458b2^ 5458b2 # Returns 0 change, while it concerns a protected file
BFG фактически принял во внимание защищенные файлы в голове, как gitignore, например:
Protected commits
-----------------
These are your protected commits, and so their contents will NOT be altered:
* commit 22a1ebd3 (protected by 'HEAD') - contains 1451 dirty files :
- .gitignore (813 B)
- ...
но они будут удалены в любом случае , в то время как они должны быть защищены:
Deleted files
-------------
Filename Git id
----------------------------------------
.gitignore | 091217cf (672 B), 17e3d7c5 (227 B)...
Просто потому, что файл был удален, не означает, что это недостижимый объект. Задает перед удалением фиксацию по-прежнему указывает на объект (ы) для удаленного файла. – matt