Запускает ли git init дважды инициализацию репозитория или реинициализацию существующего репо?

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

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

Тогда, скажем по ошибке, я бегу git init снова, и я получаю Reinitialise существующее сообщение Git-репозитория.

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

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

3 ответа

Решение

Из Git Docs:

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

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

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

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

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

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

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

Это означает, что вы уже инициализировали git. потому что вы уже загрузили файл на github с этого пути. вы проверяете путь, тогда создается папка с именем.git. Вот почему вам больше не требуется инициализировать git. вы можете перейти к следующему шагу

git add.

Папка Git

Другие вопросы по тегам