Есть ли команда ignore для git, например, для svn?
Я новый пользователь git
, и я начинаю новый проект. У меня есть куча файлов точек, которые я хотел бы игнорировать. Есть ли команда ignore для git
, например, для svn
?
Ответы
Ответ 1
Нет специальной команды git ignore
.
Отредактируйте файл .gitignore
, расположенный в соответствующем месте рабочей копии. Затем вы должны добавить этот .gitignore
и зафиксировать его. Каждый, кто клонирует это репо, будет игнорировать эти файлы.
Обратите внимание, что только файлы, начинающиеся с /
, будут относиться к каталогу .gitignore
. Все остальное будет соответствовать файлам в любом подкаталоге.
Вы также можете отредактировать .git/info/exclude
, чтобы игнорировать определенные файлы только в одной рабочей копии. Файл .git/info/exclude
не будет зафиксирован и будет применяться только локально в этой рабочей копии.
Вы также можете настроить глобальный файл с шаблонами для игнорирования с помощью git config --global core.excludesfile
. Это будет локально применяться ко всем рабочим файлам git в той же учетной записи пользователя.
Запустите git help gitignore
и прочитайте текст для деталей.
Ответ 2
Очень полезная команда git игнорировать поставляется с удивительным tj/git-extras.
Вот несколько примеров использования:
Список всех игнорируемых ранее шаблонов
git ignore
Добавить шаблон
git ignore "*.log"
Добавьте один из шаблонов из gitignore.io
git ignore-io -a rails
git-extras содержит много полезных команд. Определенно стоит попробовать.
Ответ 3
В Linux/Unix вы можете добавлять файлы в файл .gitignore с помощью команды echo
. Например, если вы хотите игнорировать все папки .svn
, запустите это из корня проекта:
echo .svn/ >> .gitignore
Ответ 4
У вас есть два способа игнорировать файлы:
-
.gitignore
в любой папке будут игнорироваться файлы, указанные в файле для этой папки. Использование подстановочных знаков возможно.
-
.git/info/exclude
хранит глобальный шаблон игнорирования, аналогичный файлу global-ignores
в файле настроек subversions.
Ответ 5
Создайте файл с именем .gitignore в корневом каталоге вашего репозитория. В этом файле вы помещаете относительный путь к каждому файлу, который вы хотите игнорировать в одной строке. Вы можете использовать подстановочный знак *
.
Ответ 6
Я надеюсь, что это не слишком поздно.
Если вы находитесь в Windows, вы можете просто сделать следующее, чтобы создать файл .gitignore
echo name_of_the_file_you_want_to_ignore.extension > .gitignore
Чтобы отредактировать .gitignore, вы можете запустить
notepad .gitignore
Ответ 7
Используя уже предоставленные ответы, вы можете свернуть свою собственную команду git ignore
с помощью alias. Либо добавьте это в свой файл ~/.gitconfig:
ignore = !sh -c 'echo $1 >> .gitignore' -
Или запустите эту команду из оболочки (* nix) по вашему выбору:
git config --global alias.ignore '!sh -c "echo $1 >> .gitignore" -'
Вы также можете создать команду git exclude
, заменив ignore
на exclude
и .gitignore
на .git/info/exclude
в приведенном выше примере.
(Если вы еще не понимаете разницу между этими двумя файлами, прочитав ответы здесь, см. этот вопрос.)
Ответ 8
Полезно определить полный файл .gitignore для вашего проекта. Награда - безопасное использование удобного флага --all
или -a
для команд типа add
и commit
.
Также рассмотрим определение глобального файла ~/ .gitignore для обычно игнорируемых шаблонов, таких как *~
, который охватывает временные файлы, созданные Emacs.
Ответ 9
Вы также можете использовать Joe Blau gitignore.io
Либо через веб-интерфазу https://www.gitignore.io/
Или, установив инструмент CLI, это очень просто, просто введите следующее на терминале:
Linux:
echo "function gi() { curl -L -s https://www.gitignore.io/api/\[email protected] ;}" >> ~/.bashrc && source ~/.bashrc
OSX:
echo "function gi() { curl -L -s https://www.gitignore.io/api/\[email protected] ;}" >> ~/.bash_profile && source ~/.bash_profile
И тогда вы можете просто набрать gi
followd всеми элементами платформы/среды, для которых нужны критерии gitignore для.
Пример
Допустим, вы работаете над проектом node, который включает grunt, и вы используете webstorm на linux, тогда вы можете ввести:
gi linux,webstorm,node,grunt > .gitignore
(чтобы создать совершенно новый файл)
или
gi linux,webstorm,node,grunt >> .gitignore
(добавить/добавить новые правила в существующий файл)
bam, вы можете пойти