Getting Git zu Folgen, umbenannt und bearbeitet Dateien

Fragen über das umbenennen von Dateien in Git haben wurde gefragt vor, aber ich kann nicht herausfinden, eine Lösung für mein spezifisches problem.

Habe ich verschoben und bearbeitet mehrere Dateien (ich habe nicht verwenden git mv - leider ist es jetzt zu spät dafür). Jetzt möchte ich es so wenn mein Kollege zieht aus meinem repository, mit seinen eigenen Bearbeitungen, die Sie auf die gleichen Dateien (ohne Sie zu bewegen), es erfolgreich führt meine änderungen mit seinem in die Datei den neuen Pfad. Erfolgreich merge, Git, klar muss wissen, dass diese sind die gleichen Dateien.

Ist Git schlau genug, diese arbeiten auf seine eigene? Es scheint schwer zu glauben. Und wenn ja, wie kann ich sicher sein, dass eine bestimmte Datei verschieben will abgeholt werden von Git - selbst wenn der Inhalt sich geändert hat?

  • Dies ist der Zweck der git mv.
  • Okay, aber wie kann ich feststellen, git, dass eine Datei verschoben wurde? Ich zog die Dateien in Visual Studio, nun möchte ich sichergehen, dass git kennt. Ich habe versucht git mv --cached aber, der nicht existiert. Wenn ich versuche git mv bekomme ich fatal: bad source, source= ...
  • Wenn Sie noch nicht begangen, Sie könnte bewegen Sie einfach die Dateien zurück an Ihre ursprünglichen Pfade, und dann git mv Sie die neuen Pfade.
  • Okay, ich kann das tun, aber es ist ärgerlich, weil ich neu aufbauen müssen ganze directory-Strukturen. Es scheint dumm von git, um nicht --cached äquivalent für diese.
  • Git ist tatsächlich clever genug, um diese Arbeit heraus auf seine eigene. Ein umbenennen ist eigentlich nur ein add und ein löschen im repository, unabhängig davon, ob Sie git mv oder nicht.
Schreibe einen Kommentar