git – Übersicht über den Stand von Branches

Da ich es auch immer wieder vergesse, schreibe ich es mir hier auf…

git for-each-ref --sort=committerdate refs/heads/ --format='%(HEAD) %(color:yellow)%(refname:short)%(color:reset) - %(color:red)%(objectname:short)%(color:reset) - %(contents:subject) - %(authorname) (%(color:green)%(committerdate:relative)%(color:reset))'

Damit zeigt git alle bekannten Branches an, mit dem letzten Kommentar, sowie, wann der erfolgt ist. Das ist gerade dann nützlich, wenn man eine Übersicht über den Stand braucht, in dem man nicht regelmäßig arbeitet.

Die Originalbeschreibung gibt es bei Stackoverflow: How can I get a list of git branches, ordered by most recent commit?

git – Synchronisieren von allen repos und branches

Wenn ich das richtig sehe, dann sollte folgendes alle Repositories (und alle Branches) innerhalb eines Verzeichnisses aktuell halten. Ein wenig Output zum Prüfen wird mit erstellt. Dies ist nur, damit ich es selbst behalte. Außerdem dürfte es schon overkill sein.

for i in `ls`; do
    cd $i;
    pwd;
    git branch;
    echo "--------------";
    git branch -a;
    for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master`; do
         git checkout ${branch##*/};
         git fetch --all;
         git pull --all;
    done;
    cd ..;
done