#author("2019-01-01T07:46:49+09:00","default:Miyashita","Miyashita")
#author("2019-01-01T07:47:05+09:00","default:Miyashita","Miyashita")
*別ブランチでコミット [#u56921e0]
**簡単に [#b8f97d8a]
別のブランチでコミットしたかったけど,既にコミットしたくないブランチで変更してしまっているとき.~
masterブランチにいるけど,まだmasterには入れずにdevブランチで今の内容をコミットしたいとき…などは下記の操作をする.
+stashで現在の内容を保存
#codeprettify{{
git stash  # -u (--include-untracked) をつけるとバージョン管理適用外ファイルも含める.~
git stash  # -u (--include-untracked) をつけるとバージョン管理適用外ファイルも含める
}}
~
+checkoutでブランチの移動
#codeprettify{{
git checkout dev # 新規作成する場合は -b をつける
}}
~
+stashしたものを移動したブランチで適用
#codeprettify{{
git stash pop # stash は適用後に削除
}}
または
#codeprettify{{
git stash drop # stash が適用後も残る
}}
~
+addしてcommit
#codeprettify{{
git add .
git commit
}}


**ブランチごとにそれぞれ別ファイルの変更をコミット [#o18da798]
【変更内容が未コミット】で~
変更済みファイルが【複数】あり~
それぞれ【別のブランチで】コミットしたい時の話.
-masterブランチでコミットしたいファイル→A
-anotherブランチでコミットしたいファイル→B~

という前提で,masterブランチにいるとする.

+Aをmasterブランチでコミット.(push)
#codeprettify{{
git add A
git commit 
git push origin
}}
~
+stashでファイルBの状態を保存しておく
#codeprettify{{
git stash -u
}}
~
+checkoutでanotherブランチに切り替え
#codeprettify{{
git checkout another
}}
~
+logを見てstash状態のコミットのハッシュを確認する (git stash applyを使いたいので)
#codeprettify{{
git log -n 5 --all --decorate  --oneline
}}
~
+ハッシュ値を入力して前の状態のファイルBを取り戻す~
上記のpopやdropの代わりにapplyでも良い.
#codeprettify{{
git stash apply --index 64359e3
}}
~
+Bをanotherブランチとしてコミット.Aの変更をanotherブランチでも反映させるときはmerge
#codeprettify{{
# git merge origin/master # 必要であれば
git add B
git commit
}}
~

Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes