2017-01-17 5 views
2

Я пытаюсь избежать отображения содержимого нежелательной папки (например: .settings, .metadata и т. Д.), Когда я выполняю «статус git» '. Я изменил файл .gitignore после добавления имен папок к нему, но все же я получаю все эти файлы при выполнении git-статуса.Git Status - Как исключить содержимое нежелательной папки, которое будет отображаться при выполнении команды «git status»

Пожалуйста, помогите мне в этом.

ответ

0

.gitignore и связанные с ними объекты работают только с невосстановимыми файлами. Как только файл будет отслежен (добавлен в Git), вы можете поместить его в .gitignore, но он не будет иметь никакого эффекта. Нет никакого способа справиться с этим, кроме удаления этих файлов из хранилища и их не проверять.

Возможно, вы прочитали около --assume-unchanged, но это очень опасный вариант. Вы можете сказать Git, что файл остается неизменным, хотя в нем есть chnages. Но это также означает, что механизмы безопасности, которые гарантируют, что вы не потеряете незафиксированные изменения, не работают над этими файлами. Поэтому, если у вас есть измененный .settings, а затем переключитесь на ветку, где отмеченный в файле .settings файл отличается от того, на котором вы в данный момент находитесь, файл будет перезаписан новым состоянием филиалов и ваши локальные изменения будут потеряны.

2

.gitignore работает только с файлами без следа.

Для остановки отслеживания уже отслеживаются файл в мерзавца, тип

git rm --cached <file> 
git rm -r --cached <folder> 

, а затем зафиксировать изменения

git commit -m "Stop tracking some files" 
+0

На самом деле, он не работает даже для неотслеживаемых файлов. Пожалуйста, предложите мне, если я буду делать какие-либо другие изменения для файлов без следа. – Raj

+0

Rohit, теперь он работает. Спасибо за вашу помощь. – Raj

Смежные вопросы