Benj: Ich vermute, dass Sie bereits eine Antwort gefunden haben, aber ich sehe, dass niemand diese Frage beantwortet hat, also werde ich.
Wenn ich einen alternativen Vorschlag zur Alias-Datei machen kann. Es sieht so aus, als ob du das für Git lösen willst.
Der beste Weg, den ich in Windows gefunden habe, ist die ~/.bashrc
Datei zu bearbeiten. Auf den meisten Windows-Rechnern wäre es unter C:\Users\<USERNAME>\.bashrc
.
Sie eine Funktion erstellen können, wie:
function MergeLocDistFn {
local co_branch=$1
local merge_branch=$2
echo ">> Debug Command: git checkout ${co_branch}"
git checkout ${co_branch}
echo ">> Debug Command: git merge --ff-only --verbose origin/${merge_branch} || git rebase --preserve-merges --verbose origin/${merge_branch}"
git merge --ff-only --verbose origin/${merge_branch} || git rebase --preserve-merges --verbose origin/${merge_branch}
}
Dann können Sie Aliase in der ~/.bashrc
Datei erstellen, wie folgt aus:
alias mergelocdist=MergeLocDistFn
alias mm='MergeLocDistFn master master'
Der Vorteil dieses Ansatzes besteht darin, dass es ermöglicht, Sie werden mit der Funktion wirklich ausgefeilt und wie ich hier zeige, debuggen Sie es auch mit Echo-Statements.
Siehe das beigefügte Bild der Beispielausgabe.
Beachten Sie auch, wenn Sie dies lieber für eine PowerShell-Eingabeaufforderung tun, ist es noch einfacher, das PowerShell-Profil zu ändern, lassen Sie es mich wissen, und ich werde Ihnen zeigen, wie.
Ein weiterer Hinweis, Sie können auch eine Funktion in der. Bashrc für den aktuellen Zweig erstellen. Hier ist ein Beispiel Funktion:
function current_branch() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || \
ref=$(git rev-parse --short HEAD 2> /dev/null) || return
echo ${ref#refs/heads/}
}
Hier ist ein Beispiel für die Verwendung der current_branch Funktion:
alias gpush='git push -u origin $(current_branch)'
Ich hoffe, dass seine hilft, lassen Sie mich wissen, wenn Sie irgendwelche Erklärungen müssen zu diesem Thema.
Vielen Dank für Ihre Hilfe! Ich habe zu diesem Zeitpunkt keine Lösung gefunden, also nochmals vielen Dank! Ich würde dich küssen, wenn ich könnte. – Benj
Schöne Aufnahme für eine erste Antwort. Ich habe einen Link zu Ihrer Antwort in den Kommentaren der Frage, die ich in meinem verlinkt habe, eingefügt. – Benj
Gut zu hören, dass es hilfreich ist. Wenn Sie weiter erforschen wollen, habe ich auch über andere Bashrc-Techniken unter http://erpenbeck.io/2016/10/27/bashrc/ gebloggt.Wenn Ihr Team zum Beispiel Git-Upstream-Fernbedienungen, Verzweigungen zum Entwickeln/Verwalten usw. verwendet, gibt es eine praktische Methode namens "cloneIt", die alles in einem Befehl konfiguriert. Passen Sie es an die Git-Konventionen Ihres Teams an. –