Show git log as tree
$ git log --oneline --graph --decorate --all | * 0255f78c (HEAD -> qmtech, my/qmtech) added support for qm_xc6slx16_sdram board | * dae037cf (my/spisingle, spisingle) added spi 1-bit mode, code from litex |/ * 1325aff6 (origin/master, origin/HEAD, master) correctly use result of Record.connect in Converter (#81)
Rebasing
git rebase --onto <where-to> <where-from> <what>
$ git rebase --onto master spisingle qmtech First, rewinding head to replay your work on top of it... Applying: added support for qm_xc6slx16_sdram board $ git log --oneline --graph --decorate --all * 37d2eff0 (HEAD -> qmtech) added support for qm_xc6slx16_sdram board | * 0255f78c (my/qmtech) added support for qm_xc6slx16_sdram board | * dae037cf (my/spisingle, spisingle) added spi 1-bit mode, code from litex |/ * 1325aff6 (origin/master, origin/HEAD, master) correctly use result of Record.connect in Converter (#81)
Push changed branch
$ git push my qmtech -f Counting objects: 7, done. Delta compression using up to 12 threads. Compressing objects: 100% (7/7), done. Writing objects: 100% (7/7), 1.86 KiB | 1.86 MiB/s, done. Total 7 (delta 5), reused 0 (delta 0) remote: Resolving deltas: 100% (5/5), completed with 5 local objects. To https://github.com/danielkucera/misoc.git + 0255f78c...37d2eff0 qmtech -> qmtech (forced update) $ git log --oneline --graph --decorate --all * 37d2eff0 (HEAD -> qmtech, my/qmtech) added support for qm_xc6slx16_sdram board | * dae037cf (my/spisingle, spisingle) added spi 1-bit mode, code from litex |/ * 1325aff6 (origin/master, origin/HEAD, master) correctly use result of Record.connect in Converter (#81)
Set default github username
$ git config --global credential.https://github.com.username danielkucera
Squash commits
git rebase -i <after-this-commit>
replace “pick” on the second and subsequent commits with “squash” or “fixup”
Ignore line endings
git config --global core.autocrlf true