Der Titel ist selbsterklärend: Ich würde gerne Swap-Dateien vom Push ausschließen können, weil es viele unerwünschte Commits macht.
Ich habe versucht hinzuzufügen
--exclude=\"^${TARGETDIR}/*.swp\"
oder ändern zu
--exclude=\"^${TARGETDIR}/.git|^${TARGETDIR}/.swp\"
Aber es scheint nicht zu funktionieren, vielleicht ist die Regexp falsch?
Es wäre viel besser, .gitignore zu verwenden und den Status zu überprüfen, bevor Sie versuchen, einen Commit durchzuführen. Hier ist mein Weg, es zu tun:
https://github.com/elnull/gitwatch/commit/c9f4b43b6c8a3dfe077f169c723c00b3d2840072
Das kopiere ich auch: gitwatch muss .gitignore-Inhalte respektieren, um sich nicht zu verpflichten. Es ist sonst ein ständiger Schmerz. Die einzige Möglichkeit besteht darin, .gitignore manuell mit allen Aufrufen von gitwatch zu synchronisieren :-(
Da ich ein externes Git-Bare-Repository für Auto-Commits verwende (mit der Option --git-dir), platziere ich .gitignore nicht im überwachten Verzeichnis.
Können wir bitte die Lösung von @elnull zu master zusammenführen?
Löst die untenstehende Lösung, die jetzt in den Master eingebunden wurde, dieses Problem? Es verwendet den Git-Status, der .gitignore beobachten sollte.
Ist beim Zusammenführen von #44 etwas schief gelaufen? Die Änderungen sind in den aktuellen Versionen des Skripts nicht enthalten.
Danke, dass du das @DeKubus gefangen hast; Ich habe es bei der großen Zusammenführung des lang getrennten Entwicklungszweigs verloren, als das in Commit 332538e passierte. Ich hole das da wieder rein.
Der Git-Status-Check-Code ist jetzt wieder da. Nochmals vielen Dank, @DeKubus. Ich schließe dieses Thema; Sprechen Sie ruhig, wenn noch etwas nicht stimmt.
Hilfreichster Kommentar
Es wäre viel besser, .gitignore zu verwenden und den Status zu überprüfen, bevor Sie versuchen, einen Commit durchzuführen. Hier ist mein Weg, es zu tun:
https://github.com/elnull/gitwatch/commit/c9f4b43b6c8a3dfe077f169c723c00b3d2840072