Я новый пользователь git
и начинаю новый проект. У меня есть куча точечных файлов, которые я хотел бы игнорировать. Есть ли команда игнорирования, git
как есть svn
?
Я новый пользователь git
и начинаю новый проект. У меня есть куча точечных файлов, которые я хотел бы игнорировать. Есть ли команда игнорирования, git
как есть svn
?
Ответы:
Специальной git ignore
команды нет.
Отредактируйте .gitignore
файл, расположенный в соответствующем месте рабочей копии. Затем вы должны добавить это .gitignore
и зафиксировать. Каждый, кто клонирует это репо, проигнорирует эти файлы.
Обратите внимание, что только имена файлов, начинающиеся с, /
будут относиться к каталогу, в котором .gitignore
находится. Все остальное будет соответствовать файлам в любом подкаталоге.
Вы также можете редактировать, .git/info/exclude
игнорируя определенные файлы только в этой одной рабочей копии. .git/info/exclude
Файл не будет совершен, и, таким образом , применяется только локально в этой одной рабочей копии.
Вы также можете создать глобальный файл с шаблонами, которые нужно игнорировать git config --global core.excludesfile
. Это будет локально применяться ко всем рабочим копиям git в одной учетной записи пользователя.
Беги git help gitignore
и читай текст для подробностей.
Очень полезная команда git ignore поставляется с замечательными tj / git-extras .
Вот несколько примеров использования:
git ignore
git ignore "*.log"
git ignore-io -a rails
git-extras предоставляет еще много полезных команд. Определенно стоит попробовать.
В Linux / Unix вы можете добавлять файлы в файл .gitignore с помощью echo
команды. Например, если вы хотите игнорировать все .svn
папки, запустите это из корня проекта:
echo .svn/ >> .gitignore
/
и завершающий '\' (для создания новой строки), например echo /nbproject/project.properties\ >> .gitignore
и echo /nbproject/project.xml\ >> .gitignore
.
У вас есть два способа игнорировать файлы:
.gitignore
в любой папке игнорирует файлы, указанные в файле для этой папки. Возможно использование подстановочных знаков..git/info/exclude
содержит глобальный шаблон игнорирования, аналогичный global-ignores
файлу конфигурации в subversions..gitignore
файле, которые не содержат '/', сопоставляются рекурсивно (то есть также во всех подкаталогах каталога, в котором .gitignore
находится файл), в отличие от svn:ignore
свойств каталога в Subversion.
Надеюсь, еще не поздно.
Если вы работаете в Windows, вы можете просто сделать следующее, чтобы создать файл .gitignore
echo name_of_the_file_you_want_to_ignore.extension > .gitignore
Чтобы отредактировать .gitignore, вы можете запустить
notepad .gitignore
Создайте файл с именем .gitignore в корне вашего репозитория. В этом файле вы указываете относительный путь к каждому файлу, который хотите игнорировать, в одной строке. Вы можете использовать *
подстановочный знак.
Используя уже предоставленные ответы, вы можете git ignore
выполнить собственную команду, используя псевдоним . Либо добавьте это в свой файл ~ / .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
в приведенном выше.
(Если вы еще не понимаете разницу между этими двумя файлами, прочитав ответы здесь, см. Этот вопрос .)
для имен, отсутствующих в рабочей копии или репо:
echo /globpattern >> .gitignore
или для существующего файла (командная строка типа sh):
echo /$(ls -1 file) >> .gitignore # I use tab completion to select the file to be ignored
git rm -r --cached file # if already checked in, deletes it on next commit
Полезно определить для вашего проекта полный файл .gitignore . Наградой является безопасное использование удобных команд --all
или -a
флагов вроде add
и commit
.
Также рассмотрите возможность определения глобального файла ~ / .gitignore для часто игнорируемых шаблонов, таких как *~
, который охватывает временные файлы, созданные Emacs.
Для этого вам нужно установить git-extras. Вы можете установить его в Ubuntu с помощью apt-get,
$ sudo apt-get install git-extras
Затем вы можете использовать команду git ignore.
$ git ignore file_name
brew install git-extras
.
Вы также можете использовать gitignore.io Джо Блау
Либо через веб-интерфейс https://www.gitignore.io/
Или, установив инструмент CLI, это очень просто и быстро, просто введите следующее на своем терминале:
Linux:
echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bashrc && source ~/.bashrc
OSX:
echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bash_profile && source ~/.bash_profile
А затем вы можете просто ввести gi
все элементы платформы / среды, для которых вам нужны критерии gitignore.
Пример!
Допустим, вы работаете над проектом узла, который включает grunt, и используете webstorm в Linux, тогда вы можете ввести:
gi linux,webstorm,node,grunt > .gitignore
(чтобы создать новый файл)
или
gi linux,webstorm,node,grunt >> .gitignore
(чтобы добавить / добавить новые правила в существующий файл )
бац, тебе хорошо идти