Git SVN ReBase: несоответствие контрольной суммы - PullRequest
40 голосов
/ 01 июля 2010

У меня проблема при попытке выполнить git svn rebase в моем хранилище.Он отображает:

Checksum mismatch: code/app/meta_appli/app_info.py
expected: d9cefed5d1a630273aa3742f7f414c83
     got: 4eb5f3506698bdcb64347b5237ada19f

Я много искал, но не нашел способа решить эту проблему.

Если кто-нибудь знает, пожалуйста, поделитесь своими знаниями.Заранее спасибо.

Ответы [ 5 ]

56 голосов
/ 07 декабря 2011

Это решение было единственным, которое сработало для меня:

Посмотрите, какой был номер редакции последнего изменения в файле:

git svn log chrome/test/functional/search_engines.py

Сбросить svn до ближайшего родителя до этой ревизии:

git svn reset -r62248 -p

Do git svn fetch!

Танцуй в свой успех.

1 голос
/ 12 сентября 2013

Я столкнулся с этой ошибкой, когда я только указал ветви, но не транк.Когда я указал одну из ветвей в качестве транка, больше не было ошибок при повторной попытке.(Целое различие «ствол», «ветвь», «ствол» обычно глупо применять в git svn, поскольку это просто человеческие условности без какого-либо более глубокого технического значения в svn.)

1 голос
/ 26 октября 2011

Только что со мной произошло, у меня не хватает места в середине "git svn dcommit", и после этого я получаю то же сообщение "Несоответствие контрольной суммы".

Я только что отредактировал .git / refs / remotes / git-svn и заменил идентификатор проблемного коммита на предыдущий. Следующая перезагрузка решает проблему.

0 голосов
/ 08 января 2016

В нашей практике ошибка "Несоответствие контрольной суммы:" для файлов .shtml в команде git svn clone ... была вызвана настройкой интерфейсного сервера Apache для интерпретации файлов .shtml (из SVN) как сервера Сторона включает в себя (SSI) и, таким образом, производит живой контент, а не просто предоставляет сохраненный файл содержимого. Отключение SSI в файле Apache /etc/httpd.conf на время миграции путем комментирования

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
Директивы

решили проблему.
В любом случае, миграция хранилища может исключать некоторые пути, и файлы происходят с:

git svn clone <URL> --ignore-paths=<regex>

пункт. Имеет смысл проверить среду процесса сервера SVN, если эти файлы имеют специальную интерпретацию, такую ​​как SSI (и файлы .php и .py), и отключить ее.

0 голосов
/ 22 мая 2013

Я только что сделал git gc, а затем git svn rebase снова заработал.

...