2013-05-08 3 views
17

Ich arbeitete an einem Zweig X. Ich habe ein Commit gemacht und es geschoben.'Fatal: Kirsche-Pick-Fehler' mit Git

Dann wollte ich cherry-pick es Zweig Y. Aber aufgrund einiger unmerged Dateien präsentieren, bekam ich die folgende Meldung:

error: 'cherry-pick' is not possible because you have unmerged files. 
hint: Fix them up in the work tree, 
hint: and then use 'git add/rm <file>' as 
hint: appropriate to mark resolution and make a commit, 
hint: or use 'git commit -a'. 
fatal: cherry-pick failed 

Nun, ich will nur Y meinen Zweig löschen, erstellen Sie dann den Zweig Y und will dann die Datei manuell bearbeiten, wo ich war versuchen zu pflücken.

Momentan kann ich den Zweig nicht löschen, da es mein Arbeitszweig ist. Ich kann nicht checkout irgendeinen anderen Zweig. Beim Versuch, den Zweig zu ändern, erhalte ich den folgenden Fehler.

mod/assign/locallib.php: needs merge 
error: you need to resolve your current index first 

Ich brauche nur den Zweig Y zu löschen, ohne X auf Zweig etwas zu verlieren.

EDIT # 1

ich die Datei bearbeitet mod/assign/locallib.php

Auf git status tun, erhalte ich:

# On branch MDL-38267_24 
# Unmerged paths: 
# (use "git add/rm <file>..." as appropriate to mark resolution) 
# 
# both modified:  mod/assign/locallib.php 
# 

Welche Datei muss ich in git add .. hinzufügen?

Antwort

11

Da Sie bereits den Konflikt Datei bearbeitet haben, müssen Sie nur

git add mod/assign/locallib.php 

dann

git cherry-pick --continue 
2

Sie haben versucht, eine Zusammenführung durchzuführen (über git merge oder git pull) und haben Dateien mit Konflikten, die nicht aufgelöst werden. Wenn Sie git status tun, sehen Sie wahrscheinlich die Datei (en) als "von beiden geändert". Sie müssen sich darum kümmern, bevor Sie etwas anderes tun.

Do git mergetool und es wird die Dateien einzeln nacheinander geöffnet. Korrigieren Sie die Datei so, dass die Konflikte gelöst sind, und dann können Sie fortfahren.

+0

Bitte meine Änderungen sehe ich auf die Frage gestellt. Ich meine, die Datei, die ich modifiziert habe, und die Datei, die von 'git status' zurückgegeben wird, sind gleich. Wie soll ich das Problem lösen, das ich habe? – xan

+0

Sie müssen den Konflikt beheben oder "Git reset" die Datei in einen konfliktfreien Zustand. Abhängig davon, was Sie getan haben, hat der Konflikt verursacht. – Schleis

Verwandte Themen