Git нажмите, чтобы проверить?
Я хочу направить свои файлы прямо на мой веб-сервер. Я добавил сервер как testing
и попробовал
git push testing
но я получаю эту ошибку. Решение сделать голый репозиторий работает, но я хочу, чтобы файлы были проверены автоматически. Я нашел этот script, но ничего не изменил.
Я могу перенести изменения в третий голый репозиторий, но это длится долго:
client:
git commit -m "test" -a
git push origin
<password>
server:
git pull origin/master
Обновление (2)
Я создал на сервере новую ветвь git branch testing
.
Также на сервере я создал .git/hooks/post-update
добавленный:
echo "a" >> /home/pi/log
git update-server-info
git stash
git merge testing >> /home/pi/log
На клиенте я запускаю
git push testing HEAD:testing
Теперь мой /home/pi/log
содержит:
a
Updating ae2f44b..04753a9
Fast-forward
application/views/main/index.php | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Но файл не изменился. Что еще может быть неправильным?
Ответы
Ответ 1
Теперь вы "push-to-deploy" (git 2.4, май 2015 г.), который улучшается на "push-to-checkout" (git 2.3, февраль 2015 г.).
См. "Разверните проект с помощью Git push" для конкретного примера.
Короче говоря, вы можете нажать прямо на отмеченную ветку (с оговорками).
См. commit 4d7a5ce
Ответ 2
Вы не можете нажать на отмеченную ветку, потому что указатель ветки используется для отслеживания состояния рабочего каталога.
Вместо этого нажмите на другую ветку, затем, с помощью пускового крючка script, объедините эту ветку в свой рабочий каталог; это слияние выполняется как быстрая перемотка вперед, пока локальные изменения не выполняются.