запустить скрипт в проекте из команды git - PullRequest
0 голосов
/ 10 мая 2018

Я хочу проверить имена филиалов, когда кто-то из моей команды делает: git checkout -b [branch-name, а затем сделать некоторую проверку и дать им обратную связь, если они не соответствуют критериям

Кажется, я не могу создавать пользовательские хуки, и я не уверен, как создать скрипт, который запускается, когда кто-то печатает git checkout -b. может кто-нибудь подсказать как это сделать?

также, как только я передам этот PR в master, я бы хотел, чтобы команда git checkout -b работала на машинах других людей, как только они вытаскивали этот новый код

1 Ответ

0 голосов
/ 10 мая 2018

То, что вы описали, это то, что вы хотите зафиксировать что-то в репо, так что если кто-то pull s из этого репо, поведение общей команды git изменяется так, чтобы запускать произвольный код вашегоВыбор.* Это не то, что git поддерживает, и, надеюсь, этого никогда не произойдет (поскольку это будет огромной дырой в безопасности).

Кажется, я не могу создавать пользовательские хуки

Почему это?

Я спрашиваю, потому что крючки - это самая близкая вещь, которую вы собираетесь получить к тому, что вы хотите.В частности, вы должны принудительно применять именование ветвей (или любые другие соглашения) на удаленном компьютере, используя ловушку предварительного получения (и отказаться от заботы о том, какие имена ветвей могут использовать разработчики локально).

Если ваши разработчикинужно что-то на стороне клиента, чтобы они могли «быстро потерпеть неудачу», когда они делают ошибки в соответствии с этим соглашением об именах - и как только у вас будет принудительное применение на стороне сервера, они, вероятно, будут - тогда вы можете предложить им тот же базовый скрипт для запуска по мере необходимости,Затем они могут настроить его локально любым удобным для них способом - например, в качестве псевдонима.

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

В конце концов, вы не сможете полагаться на программное обеспечение для принудительного примененияВаша политика именования.Не все лучше решить как техническую проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...