Git добавить все, кроме игнорирования файлов в файле .gitignore - PullRequest
114 голосов
/ 07 июля 2011

Я добавляю управление исходным кодом в проект, в котором его нет.Проблема в том, что есть много файлов, которые изначально добавляются в git с файлом .gitignore , но я не могу понять, как добавить все файлы, не включая файлы, соответствующие чему-то в .gitignore file.

git add *

Приведенная выше команда не добавляет файлы, поскольку она обнаруживает файлы, которые игнорируются .gitignore .

git add -f *

Приведенная выше команда добавит все файлы, включая файлы, которые я хочу игнорировать.

Итак, как мне добавить все файлы, все еще придерживаясь файла .gitignore ?

Ответы [ 4 ]

242 голосов
/ 07 июля 2011

Я думаю, вы имеете в виду git add ., который добавит все файлы в репозиторий, которые не указаны в .gitignore - вы можете увидеть эти изменения, набрав git status

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

Мой обычный поток мерзавцев - создание .gitignore файл и добавить файлы проекта в репо.Я протестирую файл .gitignore, набрав git status после импорта файлов - если я увижу добавленные файлы (например, только .php или .html, НЕ .mp3 или .mov), то вы можетеgit add . для добавления всех и git commit -m "initial commit" для их фиксации, и вы должны быть установлены.

24 голосов
/ 07 июля 2011
git add .

Это добавит все пути и игнорирует совпадения из .gitignore

12 голосов
/ 07 июля 2011

Попробуйте git add . (что означает "добавить все файлы в текущем каталоге и ниже")

2 голосов
/ 12 февраля 2016

Другой вариант - использовать файл exclude Git-репо.Этот файл работает аналогично .gitignore файлу, но не предназначен для репо.

Из Github docs :

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

Используйте ваш любимый текстовый редактор, чтобы открыть файл с именем .git/info/exclude в корне вашего Git-репозитория.Любое добавленное вами правило не будет зарегистрировано и будет игнорировать только файлы для вашего локального репозитория.

  1. В терминале перейдите к местоположению вашего репозитория Git
  2. Использование вашего избранногоВ текстовом редакторе откройте файл .git/info/exclude
  3. Добавьте правила в файл exclude, как в файле .gitignore
...