Libgit2 после слияния MERGE_HEAD все еще присутствует в папке .git

После объединения файлов из удаленного и локального репозитория и совершения этого слияния у меня все еще остаются следующие файлы: MERGE_HEAD, MERGE_MODE, MERGE_MSG

Это нормальное поведение, и мне нужно почистить их, или я сделал что-то не так?

Как будто я вызываю git status в этой папке, git status отвечает, что ожидается слияние.

Исходный код того, как я делаю коммит слияния

Спасибо

РЕДАКТИРОВАТЬ: фрагмент, как я делаю фиксацию слиянияPull Merge Commit

1

Решение

Эти файлы существуют для совместимости с git. Создание нового коммита не приводит к его автоматическому удалению, поскольку их следует удалять только после того, как приложение определит, что обновление прошло успешно и полностью.

Есть функция для очистки состояния, git_repository_state_cleanup () который вы можете вызвать, как только вы создали коммит слияния и обновили ссылку.

3

Другие решения