2014-09-11 3 views
0

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

Должен ли этот крюк быть локальным, а также на сервере?

+0

* pre-receive * hooks - это строго удаленный репозиторий. Вы можете писать перехваты на разных языках, таких как ruby, python или bash (и многое другое). Просто выберите язык, который вам больше всего нравится, и найдите примеры, вы найдете различные с Google. –

ответ

0

Он должен быть на сервере. И я предлагаю вам использовать крючок update в вашем случае.

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

Вы можете начать с образца в вашем мерзавца репо hooks/update.sample просто скопировать и переименовать его в update. Git будет запускать его автоматически.

git diff Вы можете использовать git diff, чтобы получить изменения в ваших толкаемых коммитах и ​​создать version numbers для каждого файла, хотя я не уверен, что означает ваш version numbers.

git diff oldrev newrev --name-status -M 

И я случайно написать update крюк, чтобы предотвратить любые толчки для филиала, за исключением называется arc от всех пользователей, для пользователя с именем git-cc-robot исключением. Здесь вы можете найти коды https://github.com/landys/git-cc-robot/blob/master/scripts/githook/%20update-prevent_master.sh.

Смежные вопросы