Quando você está fazendo uma palestra com uma demonstração em várias etapas, pode ser prático ter um repositório git com um commit para cada etapa. Durante a demonstração, quando você quiser ir para a próxima etapa, tudo o que você precisa fazer é passar para o próximo commit. Mas, exceto se você souber o sha1 deste commit, pode ser complicado fazer isso sem interromper sua conversa. Tenho dois aliases git para sugerir para esta tarefa (in ~/.gitconfig
):
[alias]
prev = checkout HEAD^1
next = "!sh -c 'git log --reverse --pretty=%H master | awk "/$(git rev-parse HEAD)/{getline;print}"" | xargs git checkout'""
Com eles