git sync branches

C++
git checkout master
git pull
git checkout mybranch
git merge master


# to keep mybranch in sync with master

# then when you're ready to put mobiledevicesupport into master, first merge in master like above, then ...

git checkout master
git merge mybranch
git push origin master
git fetch origin
git reset --hard origin/master
git clean -f -d

#If you want to retain the changes as unstaged files, use --soft instead of --hard.
#WARNING: All your untracked files will be gone when you do git clean -f -d.
Source

Also in C++: