Git config alias escaping

Ich versuche, einen Git-Alias zu schreiben, der die Zeichenfolge "[ci skip]" (am Ende der Nachricht) aus den Commit-Nachrichten entfernt, aber ich habe Probleme mit dem Escape-Vorgang. Der Alias übernimmt den gesamten Commit von dem als Argument an @ übergebenen CommiHEAD.

Wenn ich den folgenden Befehl ausführe:

git filter-branch -f --msg-filter "sed -e \"s/\[ci skip\]$//g\"" master..HEAD

it funktioniert wie erwartet. Wie auch immer, wenn ich den folgenden Alias erstelle:

unwip = !sh -c 'git filter-branch -f --msg-filter \"sed -e \\\"s/\[ci skip\]$//g\\\"\" $0..HEAD'

nd ich laufegit unwip master es beschwert sich über schlechte Konfiguration, aber ich erwarte, dass es sich wie die vorherigen Kommandos verhält. Wie kann ich das beheben?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage