Ne peut pas résoudre rebase conflit
foo:/opt/bar$ git status
# On branch develop
nothing to commit (working directory clean)
foo:/opt/bar$ git pull --rebase origin develop
From ssh://xxx/yyy
* branch develop -> FETCH_HEAD
First, rewinding head to replay your work on top of it...
Applying: Subscription logging added.
Using index info to reconstruct a base tree...
<stdin>:120: trailing whitespace.
* @return integer
<stdin>:143: trailing whitespace.
* @return integer
<stdin>:166: trailing whitespace.
* @return integer
<stdin>:189: trailing whitespace.
* @return integer
<stdin>:212: trailing whitespace.
* @return integer
warning: squelched 3 whitespace errors
warning: 8 lines add whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging app/config/config.yml
CONFLICT (content): Merge conflict in app/config/config.yml
Failed to merge in the changes.
Patch failed at 0001 Subscription logging added.
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".
foo:/opt/bar$ git status
# Not currently on any branch.
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both modified: app/config/config.yml
#
no changes added to commit (use "git add" and/or "git commit -a")
foo:/opt/bar$ git add -A
foo:/opt/bar$ git status
# Not currently on any branch.
nothing to commit (working directory clean)
foo:/opt/bar$ git rebase --continue
Applying: Subscription logging added.
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".
foo:/opt/bar$ git add -A
foo:/opt/bar$ git status
# Not currently on any branch.
nothing to commit (working directory clean)
foo:/opt/bar$ git rebase --continue
Applying: Subscription logging added.
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".
foo:/opt/bar$
avez-vous essayez de sauter ce changement avec
Probablement après la réalisation de la fusion,
Aucun fichier n'a besoin de fusion <<<
Remarque: assurez-vous d'utiliser un Git 2.0.2+ (juillet 2014) pour être sûr de la
dup: stackoverflow.com/questions/14410421/...
--skip
? c'est peut être juste la correction de certains de fuite espaces problème qui a été résolu dans l'entrants s'engage (d'ébullition bas pour un no-op)Probablement après la réalisation de la fusion,
app/config/config.yml
n'est pas modifiée. Donc, vous devez simplement --skip
ce commitAucun fichier n'a besoin de fusion <<<
git mergetool
Remarque: assurez-vous d'utiliser un Git 2.0.2+ (juillet 2014) pour être sûr de la
git rebase --skip
fonctionne correctement. Voir ma réponse ci-dessousdup: stackoverflow.com/questions/14410421/...
OriginalL'auteur Roman Newaza | 2014-04-02
Vous devez vous connecter pour publier un commentaire.
Vous êtes sur la bonne voie. Vous avez juste besoin d'utiliser ignorer le commit sur lequel vous avez des problèmes:
Vous avez résolu le conflit, mais cela a entraîné aucun changement par rapport à la précédente livraison. Dans ce cas, vous ne pouvez pas simplement
git rebase --continue
, parce que vous dites Git pour créer un vide s'engager, ce qui n'est pas autorisé.Si vous avez des conflits de toutes les autres vous engage doit toujours utiliser
git rebase --continue
.La
--skip
option est également utile lorsque vous ne souhaitez pas inclure certains s'engager dans le nouveau produit de l'histoire.git rebase --skip
: étais-je vraiment sûr que c'était OK pour ignorer cela? Et, une note de côté: techniquement, un vide commit est possible, il faut juste--allow-empty
quigit rebase
n'a pas d'alimentation.alors, comment utilisez-vous
--allow-empty
sirebase
ne le supporte pas?Ce serait bien si Git les développeurs à améliorer les messages pour ce cas précis pour aider les autres à comprendre quoi faire
il est uniquement disponible en régulier
git commit
. Vous pourriez faire un vide s'engager manuellement si vous avez vraiment voulu, puis passer le vide s'engager à ce que le rebase ne pouvez pas ajouter. Mais ensuite, vous devez avoir une raison de le faire/garder le vide s'engager, et pendant un rebase, je ne suis pas sûr de ce que cela serait.Je ne vais pas le faire 🙂
OriginalL'auteur Haralan Dobrev
git rebase --skip
est en effet la bonne solution, sauf qu'il est un cas où il serait coincé et ne serait pas en mesure d'aller avec le courant rebase.Git 2.0.2 (juillet 2014) a corrigé ce bug: voir s'engager 95104c7 par brian m. carlson (
bk2204
):rebase--merge
: correction--skip
avec deux conflits dans une rangéeOriginalL'auteur VonC