Ich mache eine i
nteractive rebase
und versuchen, alle bin
und obj
Ordner aus meiner Geschichte zu entfernen. Die Ordnerstruktur meiner Repo ist wieIst dies der richtige Weg zu Gitignore-Dateien?
MyRepo
MyClass
.
.
bin
obj
.
MyTestClass
.
.
bin
obj
.
.
.
.
ich meine erste geändert begehen und fügte hinzu, eine .gitignore
mit Inhalt
/MyClass/bin
/MyClass/obj
/MyTestClass/bin
/MyTestClass/obj
und setzen in MyRepo
.
Allerdings, wenn ich zu begehen gehe ich immer noch die Dateien sehen, ich will nicht sind (.exe
, .pbd
, etc.)
Sie gingen also zu commit, wo die Dateien an erster Stelle hinzugefügt und nur mit dieser Änderung geändert wurden? Nun .... Sie müssen auch die Dateien (auf der gleichen Änderung Aktion) rm, damit sie vorwärts gehen. Replizieren Sie alle folgenden Revisionen aus dem ursprünglichen Zweig mit cherry-pick (... oder sogar mit filter-branch) und dann wäre es so, als ob diese Dateien nie in der Verzweigung existierten. – eftshift0
@Edmundo Können Sie einen Überblick über die Befehlsfolge geben, um dies zu tun? Ich stelle mir vor, ich beginne mit 'git rebase -i --root', ändere dann das erste Commit in' edit' anstelle von 'pick', dann, sobald die Rebase startet, gebe ich' git commit --ammend', füge das '.gitignore hinzu 'Datei, führe einen' git rm' auf den Dateien, die unter den 'Gitignore' fallen, dann commit ?? – user7127000
aaahhh ... konnte nicht folgen. Folgendes würde ich tun. Richten Sie zuerst zwei Zweige in der Revision ein, in der die Dateien hinzugefügt wurden, und überprüfen Sie den Zweig, in dem die Dinge korrigiert werden: '' 'git branch fix-start; git checkout -b korrigierter-Zweig '' '. Ändern Sie nun die .gitignore-Datei, um die richtigen Werte zu haben (falls nicht schon) und löschen Sie auch die Dateien, die "falsch" hinzugefügt wurden (kann '' 'git rm --cache''', wenn Sie sie behalten wollen dein Arbeitsbaum). Jetzt wird '' 'git commit --amend --no-edit''', damit Sie eine" sauber korrigierte Revision "erhalten. Weitere Informationen zur nächsten Nachricht –
eftshift0