Es gibt bereits einige gute Antworten, aber meine Situation war langweilig. Ich hatte die Quelle einer auf Win10 installierten PLM-Software (Product Lifecycle Management) bearbeitet und danach entschieden: "Ich hätte dies wahrscheinlich zu einem Git-Repo machen sollen."
Die Cache-Option funktioniert also nicht direkt für mich. Posting für andere, die möglicherweise die Quellcodeverwaltung hinzugefügt haben, nachdem sie eine Reihe von anfänglichen Arbeiten ausgeführt haben UND .gitignore
nicht funktionieren, ABER Sie haben möglicherweise Angst, eine Reihe von Arbeiten zu verlieren, sind also git rm --cached
nichts für Sie.
!WICHTIG: Das liegt wirklich daran, dass ich git zu spät zu einem "Projekt" hinzugefügt habe, das zu groß ist und meinen .gitignore zu ignorieren scheint. Ich habe KEINE Verpflichtungen. Ich kann damit weggucken :)
Zuerst habe ich gerade getan:
rm -rf .git
rm -rf .gitignore
Dann musste ich mir ein Bild von meinen Veränderungen machen. Auch dies ist ein Installationsprodukt, an dem ich Änderungen vorgenommen habe. Zu spät für ein erstes Commit der reinen Hauptniederlassung. Ich brauchte also eine Liste der Änderungen, die ich seit der Installation des Programms vorgenommen hatte, indem ich > changed.log
eine der folgenden Optionen hinzufügte :
Power Shell
# Get files modified since date.
Get-ChildItem -Path path\to\installed\software\ -Recurse -File | Where-Object -FilterScript {($_.LastWriteTime -gt '2020-02-25')} | Select-Object FullName
Bash
# Get files modified in the last 10 days...
find ./ -type f -mtime -10
Jetzt habe ich meine Liste der Änderungen in den letzten zehn Tagen (lassen Sie uns hier nicht auf bewährte Methoden eingehen, außer zu sagen, ja, ich habe mir das angetan).
Für einen Neuanfang jetzt:
git init .
# Create and edit .gitignore
Ich musste meine geänderte Liste mit meinem wachsenden .gitignore vergleichen, der ausgeführt wurde, git status
als ich ihn verbesserte, aber meine Änderungen in .gitignore werden im Laufe der Zeit eingelesen.
Endlich habe ich die Liste der gewünschten Änderungen! In meinem Fall handelt es sich um ein Boilerplate - einige Themen funktionieren zusammen mit mehreren XML-Konfigurationen, die für das Ausführen eines Entwicklungssystems gegen diese Software spezifisch sind und die ich in ein Repo einfügen möchte, damit andere Entwickler sie nutzen und dazu beitragen können ... Dies wird also unser Hauptzweig sein begehen, pushen und endlich NIEDERLASSEN für neue Arbeit!
.gitignore
Datei verwendetANSI
oderUTF-8
codiert. Wenn etwas anderes verwendet wirdUnicode BOM
, kann Git die Datei möglicherweise nicht lesen.