git rebase fatal: нужна одна ревизия



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



$ git fetch <remote>
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 20 (delta 12), reused 0 (delta 0)
Unpacking objects: 100% (20/20), done.
From git://github.com/path_to/repo
9b70165..22127d0 master -> $/master
$ git rebase <remote>
fatal: Needed a single revision
invalid upstream <remote>


The <remote> вместо моего удаленного имени и на самом деле не мое удаленное имя. Документация по этой ошибке кажется немного свободной.

770   6  

6 ответов:

вам нужно указать имя ветви (или другой идентификатор фиксации), а не имя удаленного to git rebase.

например:

git rebase origin/master

нет:

git rebase origin

внимание, хотя origin должен разрешить к ref origin/HEAD при использовании в качестве аргумента, где требуется ссылка на фиксацию, кажется, что не каждый репозиторий получает такую ссылку, поэтому она не может (и в вашем случае не работает). Стоит быть откровенным.

проверьте, что вы правильно написал название ветки. Я перебазировал ветку истории (т. е. branch_name) и забыл часть истории. (т. е. story/branch_name) и затем git плюнул на эту ошибку, которая не имела большого смысла в этом контексте.

я столкнулся с этим и понял, что я не принес вверх по течению, прежде чем пытаться перебазировать. Все, что мне нужно было git fetch upstream

проблема в том, что вы ответвлялись от ветви.... где вы пытаетесь перебазироваться. Вы не можете перебазироваться в ветвь, которая не содержит фиксации, на которой была первоначально создана ваша текущая ветвь.

Я получил это, когда я впервые перебазировал локальную ветвь X на выталкиваемую Y, а затем попытался перебазировать ветвь (впервые созданную на X) на выталкиваемую Y.

решена для меня путем перебазирования на X.

У меня нет проблем с перебазированием на удаленные ветви (потенциально нет даже проверено), при условии, что моя текущая ветвь происходит от предка этой ветви.

на пульт origin:

$ echo "ref: refs/remotes/origin/master" > .git/refs/remotes/origin/HEAD

Я по ошибке набрал git rebase когда я имел в виду git bisect. Убедитесь, что вы используете команду, которую вы ожидаете!

Comments

    Ничего не найдено.