2017-06-05 1 views
0

Ich habe gerade mein neues Git Repo mit p4merge Setup als mein externes Git Mergetool eingerichtet. Ich bin auf dem Mac, und ich folgte nur den git Tutorial für externe mergetools:Wie habe ich alle diese zusätzlichen Dateien während Git Mergetool generiert und wie werde ich sie loswerden?

https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration

ich durch meine merge Konflikte gearbeitet, und ich bemerkte, schien es eine separate Instanz von p4merge für jede neue Klasse offen zu halten Konflikt habe ich geöffnet. In meinem alten Repo würde ich nur speichern, schließen Sie das Fenster und git würde automatisch den nächsten Konflikt öffnen (ich war auch unter Windows zu der Zeit). Jetzt schien dies nur dazu zu führen, dass das Speichern die Hälfte der Zeit andauerte, und ich musste weiterhin 'git mergetool' in das Terminal eingeben, um wieder in p4merge zu kommen. Nachdem ich alles erledigt hatte, war meine Filiale sauber, aber ich hatte alle diese separaten Prozesse für p4merge noch offen. Sie alle zu schließen, hat eine Menge Fehler in der Befehlszeile verursacht, und dann endete ich mit einer TON von Base/Local/Remote-Artefakten. Jetzt ist der Status meiner Zweig sieht in etwa wie folgt aus:

modified: src/main/java/com/utils/ClientResponseUtils.java.orig 
    deleted: src/main/java/com/utils/ClientResponseUtils_BACKUP_70929.java 
    deleted: src/main/java/com/utils/ClientResponseUtils_BASE_70929.java 
    deleted: src/main/java/com/utils/ClientResponseUtils_LOCAL_70929.java 
    deleted: src/main/java/com/utils/ClientResponseUtils_REMOTE_70929.java 
    modified: src/main/java/com/utils/ListUtils.java.orig 
    deleted: src/main/java/com/utils/ListUtils_BACKUP_85524.java 
    deleted: src/main/java/com/utils/ListUtils_BASE_85524.java 
    deleted: src/main/java/com/utils/ListUtils_LOCAL_85524.java 
    deleted: src/main/java/com/utils/ListUtils_REMOTE_85524.java 

Außer viel, viel mehr, es hat im Grunde eine Reihe von diesen für alles, was ich berührt, und das war eine Menge von Klassen in der Zusammenführung.

Wie gehe ich das schnell durch, ohne jedes einzeln zu rmigen, und wie verhindere ich, dass dies in der Zukunft erneut passiert?

ein wenig weiter vor der Veröffentlichung der Suche, wird mir klar, diese Support-Seite könnte mir meine Kommandozeilennutzung aufzuräumen helfen:

http://answers.perforce.com/articles/KB/2848/

Aber ich frage mich immer noch der beste Weg, so eine schreckliche aufzuräumen und langwieriges Durcheinander, und warum es in erster Linie passiert ist.

+0

Ich benutze nicht p4merge (oder 'git mergetool' an erster Stelle), also habe keinen Rat, wie * es * zu benutzen, aber all diese temporären Dateien namens '* _BACKUP_ *', ' * _BASE_ * 'usw. sind solche, die' git mergetool' selbst erstellt. Sie sollten nicht als "gelöscht" erscheinen, nicht weil sie es nicht sind, sondern weil sie niemals begangen worden sein sollten. Um als "gelöscht" angezeigt zu werden, muss jemand sie hinzugefügt und begangen haben, vermutlich aus Versehen. – torek

+0

Sie zeigten sich unter meinem git-Status, nachdem ich manuell alle p4merge-Instanzen geschlossen hatte, von denen ich dachte, dass ich damit fertig bin. Ich habe eindeutig ein paar Probleme auf meiner Hand: wie man p4merge korrekt auf dem Mac verwendet und alle diese zusätzlichen Dateien jetzt loswird. – Benny

Antwort

1

wird diese

git config --global mergetool.keepBackup false 

helfen Wenn Sie in erster Linie betroffen sind mit die Dateien nicht zu begehen, können Sie sie zu .gitignore hinzufügen:

*_BACKUP_* 
*_BASE_* 
*_LOCAL_* 
*_REMOTE_* 

Und Sie können git clean -fx gelegentlich laufen sie alle

zu entfernen
+0

Danke für all diese, die alle meinem Git-Fu-Repository hinzugefügt wurden. Ich merkte auch, dass meine Berechtigungen im Prozess der Säuberung vermasselt waren (ich habe einige Zweigarbeiten gemacht, während ich auf meiner Maschine unter root war, ich glaube, da bin ich anfänglich falsch gelandet). Ich habe das behoben, indem ich zu .git/objects gegangen bin und sudo chown -R mein Name: 'mygroup' * Diesen Kommentar für meine eigene Erbauung hinzufügend, geschieht mir dies in zwei Monaten wieder und ich muss mich daran erinnern, was ich getan habe letztes Mal. – Benny

Verwandte Themen