- 追加された行はこの色です。
- 削除された行はこの色です。
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
#contents
** コミットを一つにまとめる [#k6ac16c1]
$ git log --decorate --oneline
050ea7f (HEAD -> master) 005
1d71318 004
cfb0c7a 003
608528b 002
a4431df 001
003,004のコミットを一つにしたい場合。
$ git rebase -i 608528b ←1つにしたいコミットの、一個前を指定。
エディタが開きます
pick cfb0c7a 003
pick 1d71318 004
pick 050ea7f 005
これを
pick cfb0c7a 003
squash 1d71318 004 ←うえのコミットにまとめるの意味。
pick 050ea7f 005
に書き換えて保存します。すると、もいちどコミットメッセージを入れる画面が開くので、メッセージを記載して再度保存します。
[detached HEAD f9f948f] 003 + 004
Date: Wed Dec 21 13:19:43 2016 +0900
1 file changed, 2 insertions(+)
Successfully rebased and updated refs/heads/master.
$ git log --decorate --oneline
6fb9004 (HEAD -> master) 005
f9f948f 003 + 004
608528b 002
a4431df 001
コミットが一つに書き換えられました。書き換えた場所以降のコミットも、新たなコミットの扱いになってますね。
pick cfb0c7a 003
squash 1d71318 004
squash 050ea7f 005
など複数指定することもできます。直前のコミットにまとめる、という意味なのでこの場合は004,005のコミットを003にまとめることになります。
**リビジョン番号の確認、HEADの位置の確認 [#nc442e88]
$ git checkout master
$ git log --oneline --decorate
09a6a5a (HEAD -> master, dev3, dev) dev commit
9210c21 dev commit
3fc335e dev commit
0e46a27 (dev6, dev5, dev4, dev2) dev2 commit
e97cefa dev2 commit
c39d327 dev2 commit
366da11 master commit
** 派生元を指定してBranch作成 [#x56bbec7]
$ git branch dev_dest dev_source
$ git checkout -b dev_dest dev_source <-作成 & 移動
dev_sourceのリビジョンを元に、dev_destブランチを作成します。
** リビジョン番号からBranch [#aab87e06]
$ git show dev4
commit 0e46a2730ab69f1a270ce92bee88fc9eda97538a
... 略
$ git checkout -b dev_dest 0e46a2730ab69f1a270ce92bee88fc9eda97538a
枝分かれのブランチっても、作成した瞬間はおなじ状態です。
$ git show dev4
commit 0e46a2730ab69f1a270ce92bee88fc9eda97538a
..
$ git show dev_dest
commit 0e46a2730ab69f1a270ce92bee88fc9eda97538a
..
単なる別名って感じでしょうか。
** コミットをまとめる [#z70aaf13]
dev_#35_spike でチマチマコミットしていた内容を dev_#35 へまとめる対応
# git checkout dev_#35 <- チケット番号のイメージ
# git merge --squash dev_#35_spike
**違う名前のリモートブランチにプッシュする [#oe1264d1]
> git checkout -b dev-spike
> git branch -a
* dev-spike
master
remotes/origin/HEAD -> origin/master
remotes/origin/master
> git push origin dev-spike:dev-spike1
To https://github.com/masatomix/hello.git
* [new branch] dev-spike -> dev-spike1
**addしないでコミット [#uc88ddd1]
git commit -a
**リモートのブランチの削除 [#o7f554bf]
[[Githubのブランチ削除 - Qiita>http://qiita.com/kwgch/items/98bbaae8e9f40a9548e0]]
**ローカルのブランチの削除 [#m06eba01]
> git branch
* dev-spike
master
> git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
> git branch -d dev-spike
Deleted branch dev-spike (was c5776c5).
> git branch
* master
消えました
[[4. ブランチを削除する【チュートリアル1 ブランチを使ってみよう】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ>http://www.backlog.jp/git-guide/stepup/stepup2_5.html]]
----
この記事は
#vote(おもしろかった,そうでもない)
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}