Страницы

Поиск по вопросам

понедельник, 10 февраля 2020 г.

Не могу сделать push в чужой репозиторий: “already up-to-date”

#git #git_push


Меня добавили в репозиторий (дали права на коммит, пуш).

Сделал клон этого репозитория, создал ветку, закоммитил изменения.

Пытаюсь сделать git push, чтобы на удалённом появилась моя новая ветка со всеми изменениями.

Ввожу мэйл, пароль, в ответ приходит "already up-to-date". Данных на удаленном нет...

Что я делаю не так?
    


Ответы

Ответ 1



already up-to-date Это означает что: На том сервере, куда вы пушите, уже есть такая ветка И эта ветка находится в таком же состоянии (т.е. точно на тот же коммит смотрит). Варианты: Вы пушите не туда (а в какой-то другой репозиторий). Проверяется командой git remote -v Вы пушите не то что нужно (а например свою ветку master). Предположим, нужные коммиты у вас в ветке mybranch: git checkout mybranch # проверим, что коммиты на месте git log git push -u origin mybranch Можно обойтись без checkout и сразу выбрать, что и куда пушить: git push -u origin mybranch:mybranch Вы сделали коммиты не в ту ветку. создал ветку, закоммитил изменения. Довольно частая ситуация: разработчик создал ветку, но не переключился на неё. Проверяется просто: # проверим, что коммиты на месте git log mybranch Если оказалось, что коммиты, например, в master, а должны быть в mybranch: git checkout mybranch git reset --hard master # теперь пробуем пушить git push -u origin mybranch # а теперь вернём свой master на тот же коммит, который на удалённом сервере git checkout master git reset --hard origin/master # заодно можно его обновить git pull

Комментариев нет:

Отправить комментарий