Я пытаюсь переустановить «dev», чтобы догнать ветку «master».
$ git checkout dev
$ git rebase master
First, rewinding head to replay your work on top of it...
Applying: Corrected compilation problems that came from conversion from SVN.
Using index info to reconstruct a base tree...
M src/com/....
<stdin>:125: trailing whitespace.
/**
<stdin>:126: trailing whitespace.
*
<stdin>:127: trailing whitespace.
*/
<stdin>:128: trailing whitespace.
package com....
<stdin>:129: trailing whitespace.
warning: squelched 117 whitespace errors
warning: 122 lines add whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging src/com/....
CONFLICT (content): Merge conflict in src/com/...
Failed to merge in the changes.
Patch failed at 0001 Corrected compilation problems that came from conversion from SVN.
When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To check out the original branch and stop rebasing run "git rebase --abort".
$ vi src/com/..... { fixed the merge issue on one file }
$ git add -A .
$ git rebase --continue
src/com/....: needs merge
You must edit all merge conflicts and then
mark them as resolved using git add
$ vi src/com.... { verified, no >>> or <<< left, no merge markers }
$ git rebase --continue
Applying: Corrected compilation problems that came from conversion from SVN.
No changes - did you forget to use 'git add'?
If there is nothing left to stage, chances are that something else
already introduced the same changes; you might want to skip this patch.
When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To check out the original branch and stop rebasing run "git rebase --abort".
Любые идеи?
git
git-rebase
AWM
источник
источник
git rebase --skip
прежнему не работает должным образом. До Git 2.0.2 (июль 2014 г.). Смотрите мой ответ нижеОтветы:
Я видел пару ситуаций, в которых
rebase
застревали. Один из них - если изменения становятся нулевыми (фиксация имеет изменения, которые уже были сделаны ранее в перебазировании), и в этом случае вам, возможно, придется использоватьgit rebase --skip
.Это довольно легко сказать. Если вы это сделаете,
git status
это не должно показывать никаких изменений. Если так, просто пропустите это. Если это не так, опубликуйте копию,git status
и я постараюсь помочь.источник
--skip
что поступит хуже, чем просто продолжу вносить изменения.git status
показали, что был файл, который был изменен, но не был добавлен в фиксацию. Выполнениеadd somefile.txt
позволило продолжить перебазирование.Один из случаев, когда я сталкивался с этой проблемой, - это когда я выполнял
git commit
послеgit add
. Итак, следующая последовательность приведет к упомянутой вами ошибке перебазирования:git add <file with conflict>
git commit -m "<some message>"
git rebase --continue
При этом приведенная ниже последовательность выполняется без ошибок и продолжает перебазирование:
git add <file with conflict>
git rebase --continue
Возможно, что
git add -A
с опцией «Все» создается аналогичная ситуация. (Обратите внимание, что я очень неопытен в git, поэтому этот ответ может быть неверным.) На всякий случай,git rebase --skip
кажется, также хорошо работает в этой ситуации.источник
Примечание. Git 2.0.2 (июль 2014 г.) исправил один случай, когда a
git rebase --skip
зависал и не мог продолжить текущую перебазировку.См совершать 95104c7 по Брайан м. Карлсон (
bk2204
)rebase--merge
: исправить--skip
с двумя конфликтами подрядисточник
Похоже, вы забыли внести
git add
изменения ...источник
git add
а затем продолжили слияние, и оно остановилось из-за конфликта в другом файле, поэтому вам нужно исправить и этот. Я что-то упустил?