GIT豆知識
**************************
【Fast-forward】
bugfixブランチをmasterブランチにマージする時、masterブランチの状態が以前から変更されていなければ、非常に簡単にマージを行うことができます。
bugfixブランチの履歴はmasterブランチの履歴をすべて含んでいるため、masterブランチは単純に移動するだけでbugfixブランチの内容を取り込むことができます。
なお、このようなマージをfast-forward(早送り)マージと呼びます。
>追記
結果だけみると同じだが、マージしたという結果が残らないのでFast-forwardはあまりおすすめできない
○Fast-forwardを回避するマージ方法
・git merge --no-ff ブランチ名
ブランチの統合【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ
**************************
【Conflict】
コンフリクト時の対応
① git status で対象ファイルを確認(Unmerged pathsにある)
② ファイルを手動で修正
③ git add ファイル名
④ git statusでUnmerged pathsにファイルがないことを確認
⑤ 全部直したら git commit でマージコミットを完成させる
**************************
【Rebase】
公式がわかりやすい。図3-29あたり。
git rebase ブランチ名
簡単にいえばリポジトリのベースを変更する。
git checkout test_1
git rebase test_0
test_0からブランチをきったあとのtest_1変更分を
test_0のHEADに対してマージにする。
rebase時にコンフリクトした場合は
修正→ git add →git rebase --continue