2016-04-14 3 views
1

Мне нужно отслеживать изменения в нескольких хранилищах Git. Я знаю, что это можно сделать с помощью так называемых git-hooks. Поиск в Интернете (здесь, GitHub, ...) Я нашел что-то в учебниках Atlassian: https://www.atlassian.com/git/tutorials/git-hooks/server-side-hooks. Однако я просто не могу найти, где они находятся. Насколько я понимаю, они должны быть расположены где-то, так как они открыты для разработчиков, по крайней мере, в соответствии с тем, что намекает текст. Итак, кто-нибудь знает, где их найти?Расположение серверной папки .git/hooks

ответ

1

Клещи на стороне сервера находятся в каталоге hooks вашего голых удаленных репозиториях, например. repo.git/hooks/.

1

Не существует таких вещей, как «клиентская» и «серверная» репозитории Git.

Разница — когда она существует —, что обычно на стороне сервера Git репозитории созданы, чтобы быть «голой» (см git help init). Такие репозитории отличаются от «нормальных» — тех, которые вы обычно находите на машинах разработчиков, поскольку они не содержат рабочего дерева — место, где файлы выгружены и изменены разработчиком.

Таким образом, хотя обычный репозиторий Git состоит из рабочего дерева и каталога с именем «.git» с хранилищем самой непосредственно под рабочим деревом, голые репозитории непосредственно то, что регулярное хранилища содержат в своем «.git» подкаталогах , (И поэтому при создании открытого хранилища вручную принято указывать имя, заканчивающееся на «.git».)

Так что, когда в обычном репозитории есть «.git/hooks», ваш серверный репозиторий просто имеет «hooks» — прямо в каталоге репозитория.

Обратите внимание, что все вышеперечисленное имеет значение true, если вы обслуживаете серверные репозитории напрямую с помощью Git или с помощью «простого» интерфейса для него, например gitolite. Продвинутые сторонние решения для хостинга могут использовать разные средства для обслуживания таких репозиториев и иметь разные представления о том, что для них означает «крючок». Я имею в виду, что Git-hooks вызывается только Git, когда он запускается, чтобы служить push или fetch из репозитория).

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