Чи є якийсь гак для 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.