GIT (HUSKY): код выхода при фиксации файла?

Есть ли способ проверить, что файл фиксируется и выйти с ошибкой?

У меня есть файл в git, который должен быть там, но никогда не должен изменяться, и я надеялся использовать хаски в качестве предварительной фиксации - поэтому, если кто-нибудь попытается изменить файл и зафиксировать его, он выдаст ошибку.

Если в будущем мне нужно изменить файл, то я могу просто отключить предварительную фиксацию.

файл - это конфигурация, которую мне нужно много редактировать при разработке, но изменения никогда не должны быть зафиксированы.

Я надеялся использовать хаски в качестве проверки, чтобы убедиться, что я не.

1 ответ

Я бы предпочел управлять файлом с драйвером фильтра содержимого, используя .gitattributes декларация

Это означает, что вы не используете версию фактического файла конфигурации, а только файл шаблона и файл со всеми возможными значениями для каждой среды.

(изображение из " Настройка Git - атрибутов Git ", из " Книги Pro Git ")

Созданный фактический файл остается проигнорированным (.gitignore): ваше фактическое рабочее дерево не становится "грязным".

smudge сценарий:

  • определить правильную среду (не ветвь, поскольку нужна только одна)
  • выбирает правильный файл значений и генерирует правильный файл на основе шаблона smudge Сценарий применяется во время git checkout,

Таким образом, вы модифицируете config.dev Файл значений столько, сколько вы хотите при разработке: из этих значений будет создан файл конфигурации (не версионный).
Но в производственном процессе проверка этого же репо приведет к генерации файла конфигурации prod, используя config.prod (версионный файл) значения.

Другие вопросы по тегам