Вы можете установить некоторые git aliases , чтобы упростить этот процесс. Это редактирует [alias]
узел вашего .gitconfig
файла.
git config --global alias.ignore 'update-index --skip-worktree'
git config --global alias.unignore 'update-index --no-skip-worktree'
git config --global alias.ignored '!git ls-files -v | grep "^S"'
Ярлыки, которые устанавливает для вас, следующие:
git ignore config.xml
- git сделает вид, что не видит никаких изменений при
config.xml
- что не позволяет вам случайно зафиксировать эти изменения.
git unignore config.xml
- git возобновит подтверждение ваших изменений
config.xml
, что позволит вам снова зафиксировать эти изменения.
git ignored
- git выведет список всех файлов, которые вы «игнорируете», как описано выше.
Я построил их, обратившись к ответу phatmann - который представляет --assume-unchanged
версию того же самого.
Версия, которую я представляю, использует --skip-worktree
для игнорирования локальных изменений. См. ответ Бореалида для полного объяснения разницы, но по существу цель --skip-worktree
состоит в том, чтобы разработчики могли изменять файлы без риска совершения их изменений .
Представленная здесь команда git ignored
использует git ls-files -v
и фильтрует список, показывая только те записи, которые начинаются с тега S
. Тег S
обозначает файл со статусом «пропустить рабочее дерево». Полный список статусов файлов, обозначенных git ls-files
: см. Документацию для опции -t
в git ls-files
.