2017-01-08 3 views
1

Das passiert, wenn ich versuche, den git cherry-pick <commit sha> Befehl auszuführen.Git: kann eine Datei nicht entfernen

  1. git cherry-pick eaf640bd3ce9f2a4e0650a0c9b9d0fbb920a77a9
  2. Fehler: Die folgenden untracked Arbeitsbaumdateien würden durch merge überschrieben werden: myfile.java Bitte verschieben oder entfernen, bevor Sie verschmelzen. Aborting fatal: cherry-pick fehlgeschlagen

Jetzt möchte ich diese Datei entfernen, weil ich es nicht mehr benötigen.

  1. git rm myfile.java
  2. Dies wird mir eine Fehlermeldung: fatal: pathspec 'myfile.java' did not match any files

Aber ich tun, um die Datei sehen, wenn git status ausgeführt wird. Wenn ich es manuell von der Festplatte lösche, werde ich jedes Mal, wenn ich das mache, rm -f ./.git/index.lock neu erstellt.

Wie entferne ich diese Datei dauerhaft ohne sich darum kümmern zu müssen?

+1

Huh? Warum löschen Sie Dateien in '.git /'? Und nein, 'rm' erstellt keine Dateien. – melpomene

+0

Ist es die Datei verfolgt, nicht verfolgt oder was? Wenn Sie 'git status' ausführen. – fedepad

+0

@fedepad Es ist nicht geparkt. Ich kann es nur durch rm löschen, aber es wird immer noch neu erstellt, wenn ich die index.lock-Datei lösche. – wesleyy

Antwort

1

Die erste Fehlermeldung besagt, dass die Datei nicht geparkt ist, d. H. Sie ist nicht Teil des aufgezeichneten Verlaufs und git weiß nichts darüber.

git rm gibt Ihnen einen Fehler aus dem gleichen Grund: Sie können nicht Dateien aus dem Repo entfernen, die nicht von Anfang an sind.

Plain rm myfile.java sollte es loswerden.

+0

Ja, aber wenn ich noch einmal cherry-picke: 'fatal: Kann nicht erstellt werden' ... /. Git/index.lock ': Datei existiert. Ein anderer Git-Prozess scheint in diesem Repository zu laufen, z.B. ein Editor von "git commit" geöffnet. Bitte stellen Sie sicher, dass alle Prozesse beendet sind und versuchen Sie es erneut. Wenn es weiterhin fehlschlägt, ist möglicherweise ein git-Prozess in diesem Repository abgestürzt: ' entfernen Sie die Datei manuell, um fortzufahren. – wesleyy

+0

@wesleyy Gibt es einen weiteren Git Prozess? – melpomene

+0

Und wenn ich dann die .lock-Datei durch Ausführen von: rm -f ./.git/index.lock entferne, wird myfile.java erneut erstellt. – wesleyy

Verwandte Themen