GIT: отслеживание неотслеживаемых файлов - PullRequest
0 голосов
/ 01 февраля 2019

При внесении изменений в существующие файлы используются следующие команды.

> git checkout myBranch
---Make code changes to myFile1.c and myFile2.c
> git add src/myFile1.c
> git add src/myFile2.c
> git commit -m "My Sample" 
> git push

----Go to server
> Pull....

Вышеприведенное извлекает изменения, внесенные в 2 файла, в удаленный репозиторий.

"неотслеживаемые" файлы

Время от времени я вижу "неотслеживаемые" файлы в моем локальном хранилище.Насколько я понимаю, «неотслеживаемые» файлы - это файлы, недавно вставленные в удаленный репозиторий (и отслеживаемые там), но теперь загруженные в мой локальный репозиторий, но еще официально не отслеживаемые.Это правильно?

Основываясь на исследованиях, кажется, что способ добавить "неотслеживаемые" файлы в локальный репозиторий - это сделать "git add ...".

Включив «git add ...» в приведенный выше пример, я получаю следующее:

> git checkout myBranch
> git add --all     <-------Adding the "untracked" files. 
---Make code changes to myFile1.c and myFile2.c
> git add src/myFile1.c
> git add src/myFile2.c
> git commit -m "My Sample" 
> git push

----Go to server
> Pull

В самом верхнем примере фиксация, push и pull привели к2 измененных файла в конечном итоге доставляются в удаленный репозиторий.Теперь, в этом примере, не приведет ли это как к моим изменениям в двух файлах, так и ко всем «неотслеживаемым» файлам, в конечном итоге будет передано на сервер?

1 Ответ

0 голосов
/ 01 февраля 2019

Ваш вопрос заставляет меня задуматься, есть ли у вас идентичные .gitignore файлы в ваших ветвях?

Потому что, если вы этого не сделаете, различные наборы файлов будут игнорироваться при переходе с ветки на ветку.Это означает, что если некоторые файлы были проигнорированы в одной ветви, git не заботится о них при переключении на myBranch, он оставляет их нетронутыми на диске.Но как только ваша ветвь меняется, новая .gitignore из этой ветки доставляется в папку, в результате чего применяется другой набор правил игнорирования.

В результате некоторые файлы могут быть исключены из игнорируемой и показаны какuntracked.

Я бы порекомендовал перейти на https://www.gitignore.io/ и сгенерировать файл .gitignore, который наилучшим образом соответствует технологиям вашего проекта.И убедитесь, что вы доставили .gitignore во все ваши филиалы.

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