объект неправильно отсортирован

Я пытаюсь синхронизировать свой разветвленный репозиторий на github. Я следую инструкциям из этого сообщения: Как обновить разветвленный репозиторий GitHub? , но, к сожалению, когда я отправляю изменения в GitHub, я получаю следующую ошибку:

remote: error: object 349e70933e59bab5094d8991a7ac35862d46e759:not properly sorted
remote: fatal: Error in object
error: unpack failed: index-pack abnormal exit

Что это значит и как решить эту проблему?


person Sławomir Rosiek    schedule 16.03.2014    source источник
comment
Попробуйте запустить git-fsck локально и посмотрите, что он говорит.   -  person John Zwinck    schedule 16.03.2014
comment
Точно так же пишет: ошибка в дереве 349e7...e759: неправильно отсортировано   -  person Sławomir Rosiek    schedule 16.03.2014
comment
Что ж, в документации сказано, что в этом случае нужно восстановить указанный объект из резервной копии. Я уверен, что у вас есть резервная копия, верно? ;-)   -  person John Zwinck    schedule 16.03.2014
comment
Конечно что у меня нет бэкапа, но по факту изменений в той ветке у меня нет. Есть ли способ просто получить его, как в оригинальном репозитории?   -  person Sławomir Rosiek    schedule 16.03.2014


Ответы (2)


Похоже, ваш локальный репозиторий не работает. :(

Если в вашем локальном репозитории нет важных изменений, просто удалите его и клонируйте новый из удаленного репозитория.

person michas    schedule 16.03.2014
comment
Я делаю это несколько раз, но проблема сохраняется - person Sławomir Rosiek; 16.03.2014
comment
Это странно. Если было возможно перенести репозиторий из удаленного репозитория в ваш локальный репозиторий, то должна быть возможность перенести его обратно. Каков результат git --version? - person michas; 16.03.2014
comment
git версии 1.8.3.msysgit.0 и есть проблема с передачей репозитория обратно на удаленный модуль. Я не объединяю изменения из основной ветки - person Sławomir Rosiek; 16.03.2014

но на самом деле у меня нет никаких изменений в той ветке. Есть ли способ просто получить его так, как он есть в исходном репозитории?

Если у вас нет личной фиксации в мастере, вы можете попробовать:

git checkout master
git reset --hard upstream/master
git push origin master

Если вы сделали фиксацию на мастере, лучше сначала изолировать их в своей собственной ветке.

git checkout master
git branch myBranch
... reset and push master
git checkout myBranch
git rebase master
person VonC    schedule 16.03.2014
comment
К сожалению, это вызывает ту же ошибку, когда я делаю push - person Sławomir Rosiek; 16.03.2014
comment
@SławomirRosiek Не могли бы вы попробовать создать вторую вилку, просто чтобы посмотреть, сможете ли вы воспроизвести свои изменения в локальном клоне этой второй вилки и отправить (во вторую вилку) указанные изменения из этого второго локального репо? Обязательно воспроизведите свои изменения в выделенной ветке, а не в master, как я вчера проиллюстрировал в stackoverflow.com/a/22420869/6309< /а>. - person VonC; 16.03.2014
comment
Извините за задержку, но как создать второй форк репозитория GitHub? - person Sławomir Rosiek; 22.03.2014
comment
Я сделал второй форк, следуя этому руководству: adrianshort.org/2011/11/08/, но снова я получил not properly sorted ошибку во время отправки - person Sławomir Rosiek; 22.03.2014
comment
@SławomirRosiek, это означает, что проблема в исходном репо. Может быть, поддержка GitHub может взглянуть на это? - person VonC; 22.03.2014