Чи є якийсь гак для git для тягнення?


157

Мені потрібно виконати деякі дії (підготувати файли повідомлень gettext * .mo) над своїм проектом кожного разу, коли я запускаюсь git pull. Чи є якийсь підходящий гак для git, який я можу використати для цієї мети будь-ласка?


15
@Alan: Це точно не дублікат. Це питання стосується гачка на місцевій стороні, куди ти біжиш git pull. Той, кого ви пов’язали, - це спрацювання гачка на пульті , коли хтось витягне з нього. (І це дуже дивне питання - це означає, що вони використовують не голий центральний репо ...)
Каскабель

2
@Alan: Досить просто пропустити, якщо ти скуйовувався - сподіваюся, я не був надто суворим. Мені просто подобається параноїдний питання щодо неправильного закриття, оскільки повторне відкриття голосів займає стільки часу, щоб накопичитись.
Каскабель

1
Джефромі: Ви абсолютно праві. Не потрібно хвилюватися. Мені було просто сумно, що я скупився і ініціював закриття.
Алан Хаггай Алаві

Відповіді:


184

Сторінка githooksman - це повний перелік гачків. Якщо його немає там, його не існує.

Однак це означає , що існує гачок після злиття, і всі витяги включають злиття, хоча не всі злиття є витягненнями. Він працює після злиття і не може вплинути на результат. Він ніколи не буде страчений, якщо були конфлікти; вам доведеться забрати це з гачком після завершення, якщо це дійсно має значення, або викликати його вручну.


39
@Jefromi "усі витяги включають злиття", навіть якщо я роблю "pull -rebase"?
FMaz008

11
Також встановлено, що злиття ніколи не виконується під час запуску, git pullякщо не буде внесено змін (ви вже в курсі).
Джо Бергантин

11
@jbergantine: Я вважаю, що я був неточним у своїй відповіді - всі тяги, які не є, включають злиття. Але ... взагалі, якщо ви намагаєтесь вжити заходів кожного разу, коли відбувається злиття, я не думаю, що ви хочете вживати заходів, коли хтось робить неодноразове злиття. Наприклад, OP буде марно відтворювати ці файли, якщо нічого не змінилося.
Каскабель

12
Якщо ви дійсно хочете щось робити щоразу, коли ви тягнете ... ви можете псевдонімом "git pull", щоб ви викликали сценарій, який робить git pull, то робить щось інше
Shadow Radiance

13
git pullз базою даних ( --rebaseабо з конфігурацією, або з конфігурацією pull.rebase=true) не включає злиття і не запускатиме гак після злиття. У цьому випадку ви можете вказати, --no-rebaseщоб переконатися, що гачок спрацьовує, або використовувати гачок після перезапису.
Віктор Шредер

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.