git checkout master
touch A
git add A
git commit -m "add A"
git push --set-upstream remote master
git checkout -b feature-B
touch B
git add B
git commit -m "add B"
git push --set-upstream remote feature-B
git checkout master
touch C
git add C
git commit -m "add C"
git push
B # feature-B & remote/feature-b
/
A---C # master & remote/master
git checkout feature-B
git rebase master
git push
B remote/feature-b
/ D feature-b
/ /
A---C < master & remote/master