Запускает ли git init дважды инициализацию репозитория или реинициализацию существующего репо? - PullRequest
143 голосов
/ 01 марта 2011

Что происходит с существующим Git-репозиторием, когда вы снова запускаете git init?

Я создал хранилище с git init. Создал файл, добавил, зафиксировал. Проверьте статус (нечего коммитить). Затем создал другой файл, проверил статус, и я вижу, что он не отслежен, как ожидалось.

Затем, скажем, по ошибке, я снова запускаю git init и получаю Повторно инициализировать существующее сообщение Git-репозитория .

Пробовал git status, но показывает то же самое. Так что же на самом деле происходит?

Может ли повторная инициализация существующего хранилища git таким образом быть вредным или полезным? Почему мы можем git init внутри существующего хранилища?

Ответы [ 3 ]

178 голосов
/ 01 марта 2011

Из git docs :

Запуск git init в существующем репозитории безопасен.Это не перезапишет то, что уже есть.Основная причина перезапуска git init - это выбор новых добавленных шаблонов.

106 голосов
/ 01 марта 2011

Это описано в документации git init:

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

46 голосов
/ 26 января 2015

Начиная с v1.7.5 ( b57fb80a7 ), git init в существующем репо также позволяет перемещать каталог .git:

Основная причина для повторного запуска 'gitinit '- это получение новых добавленных шаблонов (или перемещение хранилища в другое место, если указан параметр --separate-git-dir).

«Подбор вновь добавленных шаблонов» означает, что любойшаблоны, которые еще не были скопированы из каталога шаблонов , теперь будут скопированы в существующий каталог git.

«Перемещение хранилища в другое место» означает, что, если --separate-git-dir указывает нав другом месте существующий каталог .git будет перемещен туда и заменен ссылкой.

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