Gitメモ
大昔に書いたgitのメモ
Install Git
環境設定
vi ~/.gitconfig [user] name = nouziru # username email = foo@bar.com # mail address [core] editor = vim # gitで利用するeditorの指定 $ git config --list # 現在の設定の表示
clone repository
clone other brach
$ git branch -a # (リモート上の全てのブランチを表示) * master remotes/origin/HEAD -> origin/master remotes/origin/develop remotes/origin/test remotes/origin/master ### CUIから作成する場合 # 1. 今いるブランチの状態がbaseとする場合 $ git branch [つけたいbranch名] $ git branch master * develop # 2. 現在の HEAD (デフォルト)以外の場所から始まるブランチを作成するには $ git branch new test # "test" ブランチのHEADから開始するブランチ "new" を作成 $ git branch new v1.2.3 # タグ v1.2.3 から開始するブランチ "new" を作成 $ git branch new HEAD^ # 最新のコミットの1つ前の位置から分岐するブランチを作成 $ git branch new HEAD^^ # 最新のコミットの2つ前の位置から分岐するブランチを作成 $ git branch new test~10 # ブランチ "test" の10個前の位置から分岐するブランチを作成 ### 既にGUIでdevelopブランチを作成している場合 $ git checkout -b develop remotes/origin/develop $ git branch master * develop
Merge
自リポジトリ内の場合
### masterからmerge用(確認用)ブランチを作成 git branch merge master ### merge処理(確認) git checkout merge # merge(受け入れ側)ブランチに移動 git merge --no-ff dev #merge(差出側)ブランチを指定してmerge git push http://github.com/xxxxxxxxx/xxxxxxx.git merge:merge ### merge(リリース) git checkout master git merge --no-ff merge git push http://github.com/xxxxxxxxx/xxxxxxx.git merge:merge
Forkしてきた場合
###Fork元の最新ver.のコードからremoteブランチを作成する git remote add fork_master http://github.com/xxx/xxx.git #ブランチ確認 git branch -a develop * release remotes/fork_master/master remotes/origin/HEAD -> origin/master remotes/origin/develop # remotes/fork_master/masterをbaseにrelease用ブランチに作成 git checkout -b release remotes/fork_master/master ### 開発してきたブランチをmerge git checkout release git merge --no-ff remotes/origin/develop # merge(差出側)ブランチを指定してmerge git push http://github.com/xxx/xxx.git merge:merge ### merge(リリース) git checkout master git merge --no-ff merge git push http://github.com/xxx/xxx.git master:master ### このままではWEB上で表示されて、かつローカルにもブランチはあるが、remoteにはない(remotes/origin/****がない)という状態になるはずなので以下を実行 # pull(fetch + merge)してもよい git remote -v git fetch origin