"Todd A. Jacobs" が既に述べた "rebase" がここでのコンセプトです。これは、物事を行うためのより詳細な方法です。
あなたがマスターブランチにいるとしましょう
$ git branch
* master
修正したいので、マスターから分岐した「fixbranch」を作成する
$ git checkout -b fixbranch
たぶん、あなたはこのブランチで数日間働き、数回コミットしたでしょう。
コミットを中央のマスター リポジトリにプッシュしたいと思った日です。マスターをチェックアウトし、中央のマスター リポジトリから最新の変更を取得します
$ git checkout master
$ git pull origin master
fixbranch を master にリベースして履歴を消去し、ローカル リポジトリ自体に競合があれば解決します。
$ git checkout fixbranch
$ git rebase master
これで fixbranch が中央の master に更新されました。fixbranch を master ブランチにマージさせてください
$ git checkout master
$ git merge fixbranch
私はこれで終わりです!ローカル マスターをセントラル マスターにプッシュさせてください
$ git push origin master
https://git-scm.com/book/en/v2/Git-Branching-Rebasing