Ich habe mein persönliches kleines Git Repository auf meinem Laptop. Ich habe gerade die Änderungen vorgenommen und überprüft, dass ich nichts zu begehen habe - jede gestufte und modifizierte Datei wurde erstellt.
Danach habe ich alle Dateien von diesem Repo an einen anderen Ort kopiert und boom! Ich habe nicht festgeschriebene Änderungen.
Ich glaube, ich vermisse einige grundlegende Git-Regeln. Kann mir jemand dazu vorschlagen?
Ihre Dateien in Windows haben wahrscheinlich Carriage-Return-Line-Feed-Zeilenenden, und Sie haben wahrscheinlich core.autocrlf in Ihrer Windows-Box. Kopieren Sie es nicht zwischen verschiedenen Plattformen. Erstellen Sie stattdessen ein neues Git-Repository auf der Linux-Box und ziehen Sie aus der Windows-Box. Sie können entweder git bundle
oder git daemon
auf dem Windows-Computer verwenden, um das Repository verfügbar zu machen. Oder Sie könnten eine leere Repo auf der Linux-Box und git push --mirror
von der Windows-Maschine machen und dann klonen, wo die endgültige Version enden soll.
Oder - ziemlich wahrscheinlich können Sie schon ein git reset --hard HEAD
machen und es auf der Linux-Box reparieren wie es ist. Möglicherweise sollten Sie alles außer dem .git-Ordner zuerst löschen, um einen vollständig sauberen funktionierenden Baum sicherzustellen.
Was ich gemacht habe, renne
%Vor%um die tatsächlich geänderten Dateien zu erhalten, dann auf alle anderen zurücksetzen
Das Kopieren von Windows nach Linux führt zu einem Unterschied in den Dateirechten. Diese Änderungen werden auch von git verfolgt.
Wenn Sie nichts zu verlieren haben, tun Sie:
git checkout .
Dadurch wird der Arbeitsbaum auf Ihren vorherigen Commit zurückgesetzt
Wenn Sie mehrere Zweige haben und alle Änderungen gepusht haben, funktioniert diese Lösung möglicherweise
Fügen Sie einfach alle Änderungen hinzu, die Sie sehen, und übernehmen Sie sie in den aktuellen Zweig (zB Master). Dann kassiere einen anderen Zweig (sprich Test) Löschen Sie den Masterzweig lokal (mit der Option -D). Ziehe den Master-Zweig von git
Fertig ..!
Tags und Links git copy-paste commit repository copy