@befart

Как запушить все коммиты?

Обнаружил, что не пушил коммиты на гитхаб, кроме первого. Работал в интерфейсе Андроид Студии, а не из командной строки. Сначала расшарил проект на гитхаб, тогда и появился там первый коммит, и файл MainActivity.java. Когда добавлял следующие коммиты, то жал кнопку Commit, вместо Commit and Push. Когда обнаружил это, попытался запушить, и последний коммит вроде, как запушился, но ничего кардинально на гитхабе не поменялось, там отсутствует большинство файлов проекта. Как это исправить, и доперенести проект на гитхаб? Можно ли просто удалить проект с гитхаб и заново правильно расшарить его туда из Студии, или есть какие-то другие способы исправления?
  • Вопрос задан
  • 875 просмотров
Решения вопроса 1
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
Невозможно "пушить коммиты"! Пушится только целиком вся локальная ветка в какую-то конкретную внешнюю ветку.

Вашу проблему видно тут
Оказывается, последние коммиты вылетели из ветки master, т.е. вот что пишут логи Version Control:
для первого коммита - In 3 branches: HEAD, master, origin/master
для большинства коммитов проекта - In 2 branches: HEAD, master
для последних - In 1 branch: HEAD.

Вы видимо ВЫШЛИ из текущей ветки и сделали checkout на произвольном коммите. Это называется состояние detached HEAD, т. е. когда на коммит указывает только HEAD. Если в таком состоянии начать создавать коммиты, то получится НОВАЯ цепочка коммитов, которая не принадлежит никакой именованной ветке. Так вы и сделали, судя по тому, что ваша IDE говорит что эти коммиты видны только в HEAD.

Как это исправить? Ответ зависит от того, что вы хотели добиться, переключившись на старое состояние проекта. Если нужно было просто отбросить более свежие правки, то надо было изначально делать reset, а не checkout. А сейчас просто сделайте так, чтобы ваша ветка указывала на текущий коммит.
Пересоздайте её локально и во внешнем репозитории.
git branch -f master
git push -f
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
SagePtr
@SagePtr
Еда - это святое
Ветка, в которую коммитили, ветка, которую пушили, и ветка, которую смотрите на гитхабе, точно одинаковые? (по умолчанию ветка master, но может быть, вы где-то её поменяли)
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы