#git #jupyter #cat
#git #jupyter #cat
Вопрос:
У меня есть глобальный фильтр для очистки выходных данных из моих записных книжек Jupyter. Для этого я использую следующие --global
настройки в git:
.gitconfig:
filter.clean_ipynb.clean=/home/username/.scripts/ipynb_drop_output.py
filter.clean_ipynb.smudge=cat
.gitattributes:
*.ipynb filter=clean_ipynb
Теперь у меня есть один репозиторий, в котором я не хочу использовать этот фильтр, каков наилучший способ переопределить это в локальном репозитории?
Ответ №1:
В файле .gitattributes
or $GIT_DIR/info/attributes
для одного репозитория, в котором вы хотите переопределить этот filter
параметр,1 используйте:
*.ipynb !filter
который возвращает значение filter
параметра на «неопределенный».
Это работает для всех атрибутов, а не только filter
. Поскольку filter
он работает только тогда, когда для него установлено определенное значение, -filter
он также будет работать; и поскольку filter
принимает только одно значение, filter=dummy
он также будет работать, если у вас нет filter.dummy.*
настроек. Но !filter
это правильный путь.
1 Используйте .gitattributes
, если вы хотите, чтобы новые клоны копировали этот параметр. Используйте $GIT_DIR/info/attributes
, если вы хотите, чтобы новые клоны не копировали этот параметр. Это тоже общий шаблон.