Как удалить или засинхронизировать HEAD и удалённую ветку на GitLab?

Картина по git'у следующая:
60ce0de8992dd661014523.png
Имеется HEAD который я перемещал кое-как, не смог сделать
git push --force, выдавало офибки о "refs", но теперь я вручную откатил до требуемого состояния и сделал коммит, но запушить мне снова не даёт.
Вопрос: как мне сейчас удалить всё лишнее, в том числе HEAD, если я правильно понимаю, чтобы оставить текущюю локальную версию в ветке origin/main на серверах gitlab и на локале?
  • Вопрос задан
  • 747 просмотров
Решения вопроса 1
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
Желтая бирка означает что ты сейчас не находишься ни в какой ветке (состояние отсоединенного указателя HEAD). Что ты собрался запушить? Ветка же нужна, которую пушить. HEAD это не ветка, это просто указатель на текущее состояние. Вот хороший мультик, который поможет тебе понять что происходит.

Тебе надо установить указатель твоей ветки на текущий коммит, на который указывает HEAD
git checkout -B имя_твоей_ветки HEAD
Тут важен регистр опции -B, так как ветка с таким именем уже где-то существует и мы принудительно пересоздаём её на новом месте. А находясь в ветке, мы уже сможем её запушить.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы