【git】non-fast-forwardとは?git pullやgit pushで発生する解決方法
目次
git non-fast-forwardエラー
git push -u origin develop
Enter passphrase for key '/Users/ユーザー名/.ssh/id_rsa':
To hoge.git.backlog.com:/ディレクトリ名/リポジトリ.git
! [rejected] develop -> develop (non-fast-forward)
error: failed to push some refs to 'hoge.git.backlog.com:/ディレクトリ名/リポジトリ.git'
hint: Updates were rejected because a pushed branch tip is behind its remote
hint: counterpart. Check out this branch and integrate the remote changes
hint: (e.g. 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
git non-fast-forwardとは?
ブランチ一覧
- master
- develop
- feature/branch
ブランチを作ると以下のような構造になります。
master ━┓━━━━━━━━━━━━━━━━━━
develop ━┓━━━━━━━━━━━━━━
feature/branch ━━━━━━━
masterブランチがあります。
開発用にmasterブランチからdevelopブランチを切ります。
機能別でfeature/branchを作ります。
feature/branchをコミットしてpushします。
feature/branchへのコミットはfeature/branchにpushです。
この時にdevelopにpush使用すると「non-fast-forward」のエラーが発生します。
発生原因は「feature/branchへのコミット」を「developにもコミットを行う」場合です。
スポンサードサーチ
対策
git pull
git pull origin YOUR_BRANCH_NAME
git fetchとgit merge
git fetch origin
# Fetches updates made to an online repository
$ git merge origin YOUR_BRANCH_NAME
# Merges updates made online with your local work
push
×:git push origin develop
○:git push origin feature/branch
developにpushではなくfeatureブランチへpushする
スポンサードサーチ
実装やエラーが解決できない場合
プログラミングの実装やエラーでどうしてもわからない場合はメンターに相談するのが一番です。
考えている、見えている範囲が狭くなり、解決から遠くに行って何時間も、何日も経っていることなんてよくある話です。
そういう時は聞ける先輩や、メンターに相談することが大事です。
僕にも相談可能なので気軽に相談してください。
Twitterからの連絡だと確実ですよ。
オンラインスクールやプログラミングスクールといったプログラミングを学べる方法もあるので、そちらもぜひ活用してもいいと思います。
Web開発で分からない時
オンライン完結型スクール DMM WEBCAMP PROアプリ開発で分からない時
プログラミング×稼げる副業スキルはテックキャンププログラミングについて分からない時
【コエテコ様限定】※ご案内を受けた以外のメディアが使用しても成果は承認されません。僕への個人でもメンターでも、スクールでもお好きな方を活用ください。