ブランチ操作
1. ブランチ作成
cmd
rm -rf .git/
git init
echo "# create(master)" > file_1.md
git add .
git commit -m "create@master"
echo "# update(master)" >> file_1.md
git commit -a -m "update@master"
git branch issue-1
git branch
2. ブランチ切り替え
cmd
git checkout issue-1
git branch
3. ブランチ削除
cmd
git branch -d issue-1
git branch
4. ブランチマージ
4-1. fast-forward
1. ブランチ(issue-1)作成
cmd
rm -rf .git/
git init
echo "# create(master)" > file_1.md
git add .
git commit -m "create@master"
echo "# update(master)" >> file_1.md
git commit -a -m "update@master"
git branch issue-1
git branch
git checkout issue-1
2. issue-1の編集&マージ
cmd
echo "# update(issue-1)" >> file_1.md
git commit -a -m "update@issue-1"
cat file_1.md
git checkout master
cat file_1.md
git merge issue-1
cat file_1.md
git branch -d issue-1
git log --graph
4-2. non-fast-forward
1. ブランチ(issue-1、issue-2)作成
cmd
rm -rf .git/
git init
echo "# create(master)" > file_1.md
git add .
git commit -m "create@master"
echo "# update(master)" >> file_1.md
git commit -a -m "update@master"
git branch issue-1
git branch issue-2
git branch
git checkout issue-1
2. issue-1の編集&マージ
cmd
echo "# update(issue-1)" >> file_1.md
git commit -a -m "update@issue-1"
cat file_1.md
git checkout master
cat file_1.md
git merge issue-1
cat file_1.md
git branch -d issue-1
3. issue-2の編集&マージ → 競合
cmd
git checkout issue-2
echo "# update(issue-2)" >> file_1.md
git commit -a -m "update@issue-2"
cat file_1.md
git checkout master
git merge issue-2
cat file_1.md
4. issue-2競合の解消&マージ
cmd
vi file_1.md
git commit -a -m "manual merge"
git branch -d issue-2
git log --graph