Я новий користувач, 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 поставляється з дивовижними 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
файлу конфігурації підривок..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. Ви можете встановити його в 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.
Приклад!
Скажімо, ви працюєте над проектом вузла, який включає грунт, і ви використовуєте веб-шторм на Linux, тоді ви можете ввести:
gi linux,webstorm,node,grunt > .gitignore
(створити абсолютно новий файл)
або
gi linux,webstorm,node,grunt >> .gitignore
(додати / додати нові правила до наявного файлу )
бам, ти добре підеш