включать только специально перечисленные файлы в git - PullRequest
1 голос
/ 24 марта 2019

Я учусь использовать git для управления проектом Python.

До сих пор я явно добавлял файлы с помощью "git add", но, похоже, в общем случае есть способ включить все файлы с помощью "git add". за исключением некоторых файлов, упомянутых в .gitignore

По крайней мере, "git status" будет означать для меня, что есть куча файлов, о которых я, вероятно, должен что-то сказать.

Я думаю о том, чтобы просто поставить:

*
**

в .gitignore, а затем продолжаю, как и прежде, явно включать файлы. Похоже, это противоречит тому, как Git предназначен для использования.

Мой вопрос: плохая идея работать таким образом и если да, то почему?

Большое спасибо

Ответы [ 2 ]

1 голос
/ 24 марта 2019

Мой вопрос: плохая идея работать таким образом и если да, то почему?

Да, это плохая идея.Цель .gitignore - указать файлы, которые вы собираетесь полностью исключить из контроля версий.

Если ваша проблема заключается в том, что вам не нравится вводить имена всех файлов по отдельности, то есть несколькопараметры:

  1. Если в одном каталоге много файлов, вы можете просто набрать git add your-directory/, и все измененные файлы в этом каталоге будут подготовлены.

  2. Если есть только несколько файлов, которые вы хотите исключить (до последующей фиксации), то вы можете использовать подсказку в # 1 или просто запустить git add ., а затем вручную исключить каждыйфайл, который вы не хотите зафиксировать, используя git reset HEAD file-to-exclude, что приведет к его удалению.

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

0 голосов
/ 25 марта 2019

но, похоже, в общем случае для включения всех файлов с "git add .", за исключением некоторых файлов, упомянутых в .gitignore

Что я обычно делаю при наборе git add . должен следовать с git status.

Если я вижу слишком много добавленных файлов (потому что мой .gitignore был недостаточно точным), я сбрасываю, изменяю .gitignore, добавляю снова и контролируюснова с git status.

git reset
# edit .gitgignore
git add .
git status

Как только статус удовлетворительный, я фиксирую.

...