В моем репозитории git у меня есть файл workflow.vsd
, который представляет диаграмму, созданную в Microsoft Visio.Git принудительно фиксировать пар файлов
Поскольку не у всех в нашей команде установлен Visio, кто бы ни изменил workflow.vsd
, также должен создать корреспондент workflow.png
.
Проблема в том, что люди часто фиксируют новую версию файла vsd
и забывают зафиксировать png
, делая изображение устаревшим.
Есть ли какой-либо способ для git разрешить фиксацию только в том случае, если оба одинаковые хэш-код фиксации установлены как workflow.vsd
, так и workflow.png
?
Другими словами, я хочу совершить только проект Visio и только если PNG также поручены:
git add workflow.vsd worflow.png
git commit
и это должно терпеть неудачу:
git add workflow.vsd
git commit
Вы можете использовать привязку предварительной фиксации, чтобы проверить, соответствует ли ваша команда вашим правилам, но каждый должен установить свой собственный крюк предварительной фиксации. Если у вас есть центральный сервер, на котором вы можете установить крючки, вы можете настроить крюк pre-receive, который отклоняет толки, которые не соответствуют вашим правилам. Если вы используете рабочий процесс pull, вы можете отклонить запросы на загрузку, которые не соответствуют вашим правилам. Возможны комбинации некоторых или всех из них. – torek