Git отправляет все файлы, даже если ничего не зафиксировать - PullRequest
0 голосов
/ 08 июля 2019

Я создал новый проект GitHub, который пуст (я все еще вижу инструкции по настройке в GitHub в моем репозитории). У меня есть сервер, который содержит проект разработки, это папка и подпапка, которые я хочу иметь на GitHub. Я запустил git init в этой папке.

Когда я отправляю ветку master на удаленный «origin», даже если я не добавил файл в индекс (и когда я запускаю git status, он говорит «ничего не коммитить, чистое дерево работы»), Git пытается выдвинуть все файлы проекта.

On branch master
nothing to commit, working tree clean



Delta compression using up to 4 threads.
Compressing objects: 100% (12403/12403), done.
^Citing objects:  29% (3803/12687), 21.75 MiB | 510.00 KiB/s

Я попытался создать файл .gitignore и завершил его, чтобы избежать отправки некоторых подпапок, и попытался добавить и зафиксировать один уникальный файл, который после этого появится в индексе, проверив состояние.

Не могли бы вы объяснить, почему Git отправляет все файлы, даже если индекс пуст?

1 Ответ

1 голос
/ 08 июля 2019

Я не уверен, что полностью понял ваш вопрос, но думаю, что это может помочь.

При выполнении git push, git выдвигает ваши локальные коммиты на удаленный. Это не имеет никакого отношения к тому, если что-то находится в вашей области (отслеживается и не отслеживается).

Если вы выполните git log, вы увидите, что у вас есть локальные коммиты, которых нет в вашем пульте. Это те коммиты, которые git отправляет на ваш пульт при вызове команды git push.

Команда git status просто дает вам сводку файлов, которые находятся в вашей области подготовки. Если вывод nothing to commit, working tree clean, это просто означает, что все ваши файлы и изменения были зафиксированы локально. Он не сообщает вам, были ли эти коммиты перенесены на ваш пульт или нет.

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