https://staragile.com/blog/rebase-vs-merge