Сохранять git заметки при переписывании истории с веткой git filter
По некоторым причинам я должен переписать всю историю моего git-репозитория, чтобы изменить committer_id каждого коммита. Тем не менее, я прикрепил примечание к более или менее каждому коммиту и используя git-filter-branch для изменения committer_id будет логически создавать новые коммиты, оставляя заметки позади. Есть ли способ скопировать заметки в соответствующий им новый коммит?
Эта ветка, похоже, задает похожие вопросы, но в 2011 году не получила решения.
Спасибо за помощь!
1 ответ
Проблема, вероятно, в том, что git-notes нужна дополнительная настройка, чтобы работать так, как вы этого хотите. Вам, вероятно, нужна эта переменная конфигурации
git config notes.rewriteRef refs/notes/commits
Из документации: https://git-scm.com/docs/git-notes:
GIT_NOTES_REWRITE_REF
При переписывании коммитов какие ноты копировать из оригинала в переписанный коммит. Должен быть список ссылок или глобусов, разделенных двоеточиями.
Если не установлен в среде, список копируемых заметок зависит от notes.rewrite. и notes.rewriteRef.
По сути, Git должен иметь разрешение на перенос заметок из оригинальных коммитов в новые, которые вы переписываете. Вы также можете увидеть этот поток Stackru для более подробного объяснения:
Есть ли способ автоматического объединения заметок, если коммиты для этих заметок раздавлены?