При нажатии я получаю ошибку «перезаписано слиянием».Я считаю, что это вызвано хуком после обновления.Могу ли я обойти? - PullRequest
1 голос
/ 28 марта 2019

У меня есть определенный файл, filename.html, в который я внес некоторые изменения, и я хотел бы нажать коммит. Поэтому я внес изменения, добавил и зафиксировал их. Всякий раз, когда я нажимаю, я получаю следующий вывод:

Enumerating objects: 9, done. Counting objects: 100% (9/9), done. Delta compression using up to 4 threads Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 439 bytes | 439.00 KiB/s, done. Total 5 (delta 4), reused 0 (delta 0) remote: remote: **** Pulling changes into Live [Hub's post-update hook] remote: remote: From /var/git/html remote: * branch master -> FETCH_HEAD remote: error: Your local changes to the following files would be overwritten by merge: remote: filename.html remote: Please, commit your changes or stash them before you can merge. remote: Aborting remote: Updating c987b05..583872c To website.com:/var/git/html.git 76ad8aa..583872c master -> master

Я пытался git reset --hard и пытался заставить толкнуть. Я пытался git push origin master --no-verify. Я пытался спрятать изменения. Нет успеха

Чтобы было ясно, я могу вносить изменения и просто нажимать коммиты для всех остальных файлов в проекте. Это только один конкретный файл, который, если я сделаю и передам изменения, не даст мне нажать.

Из другого вопроса, который я задал здесь, мне сказали, что, вероятно, перехват после обновления вызывает тягу, и именно здесь возникает ошибка. Тем не менее, я не смог найти способ обойти это. Я не настроил Git на этот проект, и разработчик, который сделал с тех пор покинул компанию. Git настроен таким образом, что при нажатии изменения передаются через ftp для обновления сайта разработчика.

Есть ли способ обойти этот крюк, чтобы я мог нажать? Есть ли лучшее решение этой проблемы, о котором я не знаю?

Заранее спасибо, этот поставил меня в тупик.

1 Ответ

1 голос
/ 01 апреля 2019

Хорошо, после долгих исследований, проб и ошибок я наконец исправил это. По сути, git был настроен для обновления сайта разработчика, когда вы делаете git push. Эта система в основном настроена по тем же принципам, что и описанная здесь

Итак, я заменил оригинальный хук пост-обновления, описанный в связанной статье, следующим образом:

#!/bin/sh echo echo "**** Pulling changes into Live [Hub's post-update hook]" echo cd /var/www/html || exit unset GIT_DIR git fetch --all git reset --hard hub/master git pull hub master exec git-update-server-info

После этого я наконец смог обойти ошибку, описанную в оригинальном сообщении, и теперь все снова работает без проблем.

...