Ремонт сломанного Git-репо - как начать все заново - PullRequest
8 голосов
/ 02 мая 2011

Я новичок в git и был разочарован тем, как работает мое репо ... или в этом случае не работает .. поэтому я удалил его из git hub, удалил папку git в проекте и планировалначать заново.

Теперь, когда я пытаюсь установить новое репо, я получаю много сообщений, таких как:

warning: You appear to be on a branch yet to be born.
warning. Forcing checkout of HEAD

, когда я пытаюсь запустить первый коммит, я вижу:

error: invalid object 8bcb4b5fd612e3ad55fb07e4bed087c55afd0861
fatal: git-write-tree: error building trees

Я запустил git fsck и вижу, что мне не хватает кучки капель.

Как я могу просто вытереть планшет и попробовать еще раз?

1 Ответ

6 голосов
/ 02 мая 2011

Хорошо,

  1. есть резервные копии
  2. git clean -dfx.
  3. mv .git / tmp / _git.backup
  4. git init
  5. git add.
  6. git commit -m 'перезагрузить репо после спасательной операции'

Обратите внимание на шаг clean, который предотвращает добавление большого количества ранее не отслеживаемых материалов в новый репозиторий. Хороший .gitignore помогает избежать подобных эффектов.

Если вы хотите, вы можете вручную перенести некоторые / все старые конфигурации, например

 vim -d _git.backup/config .git/config

(или просто скопировать)

Я не буду вдаваться в очевидные подробности о влиянии на потенциальные удаленные клоны / ветви:)

Есть способы примирить подобные вещи, но сейчас, похоже, это отвечает на ваш вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...