git pull や git merge を忘れたとき

例えば,ローカルの master が origin/master より数コミット遅れているのにも関わらず,ローカルで変更をしてしまったとき.
ローカルの master でのコミットはまだ行っていないものとする.

  1. git stash で現在のローカルの情報を保存
    git stash

  2. mergeまたはpull
    git fetch origin #既に最新情報の場合 fetch は不要
    git merge origin/master
    または
    git pull origin master

  3. showでstashとの差分を確認する
    showでstashした時と最新のorigin/masterを反映させた現在の状態との差分を確認する.
    git show -p

  4. stash pop(stash apply)でstashを現在のmasterに適用する
    git stash pop
    または
    git stash apply [index]
    git stash applyのインデックスはgit logで確認する.

  5. 競合の問題などを解決後, add, commit
    git add .
    git commit -m "commit massage"

  6. 競合後修正してstashが削除されていない場合はstashを削除
    git stash drop

Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2018-09-13 (Thu) 10:13:45 (2054d)