Open2

Git備忘録

だーら(Flamers / Memotia)だーら(Flamers / Memotia)

mainとdevelopに意図しないずれが発生した。developをmainの最新状態に合わせたい

状況

  • developをmainにマージしようとすると、意図しない差分が発生している
  • おそらく、mainに直接差分をcommit & pushし、同じような差分をdevelopに対しても行ったから?
  • developをmainにマージしようとして、何も差分が発生しないようにしたい


mainブランチのコミットログ

developブランチのコミットログ

解決

$ git fetch
$ git switch main

# mainブランチにいる状態
$ git merge origin/main

# developブランチに切り替え
$ git switch develop

# この時点ではずれたgit log
$ git log

# mainに同期する
$ git reset --hard main
HEAD is now at 4f0c6a1 本番環境のサーバーにアクセスする

# この時点でmainとおなじになっている
$ git log

force pushする

$ git push origin develop
To github.com:xxxxxx/yyyyyy.git
 ! [rejected]        develop -> develop (non-fast-forward)
error: failed to push some refs to 'github.com:xxxxxxxx/yyyyyy.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

$ git push origin develop --force
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
To github.com:xxxxxxx/yyyyyyy.git
 + 23f3405...4f0c6a1 develop -> develop (forced update)