17 Punkte von studroid 2022-12-01 | Noch keine Kommentare. | Auf WhatsApp teilen

So richtet man einen benutzerdefinierten Befehl ein, der lokale Branches löscht, die nur noch auf dem eigenen Rechner vorhanden sind, wenn der Remote-Branch gelöscht wurde, während ein lokaler Branch diesen Remote-Branch verfolgt.

  • Dabei wird ausgenutzt, dass der Status auf [gone] wechselt, wenn ein verfolgter Remote-Branch gelöscht wird
  • Der Befehl git gone führt zwei Dinge aus
    1. Prune per git fetch -p (Aktualisierung der Informationen zu gelöschten Remote-Branches)
    2. Löscht alle lokalen Branches, die gelöschte Remote-Branches verfolgen
  • Lokale Branches ohne verfolgten Remote-Branch werden nicht gelöscht

Wenn du in einem Terminal, in dem Git ausgeführt werden kann, den folgenden Befehl verwendest, kannst du git gone als benutzerdefinierten Befehl hinzufügen.

  • git config --global alias.gone "! git fetch -p && git for-each-ref --format '%(refname:short) %(upstream:track)' | awk '\$2 == \"[gone]\" {print \$1}' | xargs -r git branch -D"

Noch keine Kommentare.

Noch keine Kommentare.