У меня была странная проблема, когда весь каталог в моем живом проекте CRM был поврежден после разрешения некоторых конфликтов из слияния (извлечения) и некоторых возвратов в этом клоне живого рабочего дерева.
Обзор конфигурации :
Голое репо на сервере тестирования в /git/project.git
это мастер-источник
Публично доступная ветвь тестирования в /var/www/html/project/httpdocs
, которая являетсяавтоматически обновляется, когда вы push origin
из локальной сети используете /git/project.git/hooks
сценарии оболочки.
общедоступная живая версия на /var/www/html/project/httpdocs
на другом сервере, к которому я подключаюсь вручную;Я никогда ничего не толкаю отсюда.
Issue :
Мне пришлось вручную скопировать локальную копию каталога, чтобы снова запустить работающее приложение.Я закончил тем, что выполнил git reset --hard <sha1>
на рабочем дереве тестирования обратно на коммит, на котором я хотел быть (потому что несколько коммитов после этого были просто полностью убраны), и git update-ref refs/heads/master <sha1>
, чтобы вернуть мой origin
, голый публичныйрепозиторий, обратно в тот же коммит.
Я просто собираюсь удалить и повторно клонировать живую ветвь, потому что меня не волнует история коммитов, и она, похоже, немного измотана.
Несмотря на то, что я сбросил и исходную мастер-копию репо, и рабочее дерево тестирования обратно в тот же коммит - когда я запускаю git status в рабочем дереве тестирования, он говорит, что моя ветвь отстает от источника / мастера на 4совершает.
Если я пытаюсь вытащить мастера происхождения или толкнуть мастера происхождения, он говорит everything is up to date
.
Что за сделка?