Есть ли мерзавец снят? - PullRequest
       23

Есть ли мерзавец снят?

4 голосов
/ 22 февраля 2010

С git clone есть опция -n, которая предотвращает извлечение HEAD после клонирования хранилища. Есть ли возможность сделать это вручную?

Редактировать Я думаю, что опция -n читается лучше в руководстве, чем на самом деле: после клонирования с -n все мои инструменты показывают, что я все еще располагаюсь в основной ветке; единственное отличие состоит в том, что все файлы отображаются как удаленные. Это не совсем та ситуация, которую я бы назвал «не проверено».

Так, может быть, я должен просто удалить HEAD?

1 Ответ

7 голосов
/ 22 февраля 2010

Самое простое решение было бы клонировать его голым:

git clone --bare your_repo bare_repo

(и удалите выписанный репо)

По сути, вам нужно превратить репо в голое, что, в соответствии с этим вопросом , может быть выполнено вручную с помощью:

  • изменив файл .git/config на bare = true вместо bare = false
  • удаление содержимого your_repo/*, отличного от .git файла
  • перемещение содержимого .git dir в your_repo/ и удаление .git dir

См. Также Git: преобразование обычного в голое хранилище , как указано MikeSep в комментариях.

Если вам необходимо снять отметку, оставьте от bare до false и просто удалите все, кроме .git. Это должно быть похоже на git clone -n.

...