Название говорит само за себя: я бы хотел исключить файлы подкачки из push, потому что он делает много нежелательных коммитов.
Я пробовал добавить
--exclude = \ "^ $ {TARGETDIR} / *. swp \"
или изменение на
--exclude = \ "^ $ {TARGETDIR} /. git | ^ $ {TARGETDIR} /. swp \"
Но похоже, что это не работает, может быть, регулярное выражение неправильное?
Было бы гораздо лучше использовать .gitignore и проверять статус перед попыткой фиксации. Вот мой способ сделать это:
https://github.com/elnull/gitwatch/commit/c9f4b43b6c8a3dfe077f169c723c00b3d2840072
Я также копирую это: gitwatch должен уважать содержимое .gitignore за то, что он не фиксируется. В остальном это постоянная боль. Единственный вариант - вручную синхронизировать .gitignore со всеми вызовами gitwatch :-(
Поскольку я использую внешний репозиторий git bare для автоматической фиксации (с параметром --git-dir), я не помещаю .gitignore в наблюдаемый каталог.
Можем ли мы объединить решение от @elnull с мастером?
Решает ли эту проблему приведенное ниже исправление, которое теперь было объединено с мастером? Он использует статус git, который должен соблюдать .gitignore.
Что-то пошло не так при слиянии # 44? Изменения не включены в текущие версии скрипта.
Спасибо, что поймал этот @DeKubus; Я потерял его при большом слиянии длинной отдельной ветки разработки, когда это произошло в коммите 332538e. Я верну это туда.
Код проверки статуса Git вернулся. Еще раз спасибо, @DeKubus. Я закрываю этот вопрос; не стесняйтесь говорить, если что-то все еще не так.
Самый полезный комментарий
Было бы гораздо лучше использовать .gitignore и проверять статус перед попыткой фиксации. Вот мой способ сделать это:
https://github.com/elnull/gitwatch/commit/c9f4b43b6c8a3dfe077f169c723c00b3d2840072