Skip to content

Commit b6b8ad1

Browse files
committed
Add quiz "03_clean_up_commit"
1 parent 79fadca commit b6b8ad1

11 files changed

+151
-7
lines changed

.gitmodules

+3
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@
44
[submodule "02_amend_commit_log"]
55
path = 02_amend_commit_log
66
url = [email protected]:takanabe/git-quiz_02_amend_commit_log.git
7+
[submodule "03_clean_up_commit"]
8+
path = 03_clean_up_commit
9+
url = [email protected]:takanabe/git-quiz_03_clean_up_commit.git

01_commit_3x.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
01_commit_3x
1+
01_commit_3x : コミットを3回実施する問題
22
========
33

44
### 問題

02_amend_commit_log.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
02_amend_commit_log
1+
02_amend_commit_log : 直近のコミット、コミットログを修正する
22
========
33

44
### 問題2-1
@@ -25,12 +25,12 @@ commit.txtに5th commitの文字列を追加し、直近のコミットに変更
2525
### 解答
2626
--------------------
2727

28-
[問題2−1の解答](02_amend_commit_log_answer.md#ans3)
28+
[問題2−1の解答](02_amend_commit_log_answer.md#ans2-1)
2929
[問題2−2の解答](02_amend_commit_log_answer.md#ans2-2)
3030

3131
### Link
3232
--------------------
3333
* Previous: [01_commit_3x : コミットを3回実施する問題](01_commit_3x.md)
34-
* Next: [03_cleanup_history : 過去のコミットをまとめて修正する、綺麗にまとめる](03_cleanup_history.md)
34+
* Next: [03_clean_up_commit : 過去のコミットをまとめて修正する、綺麗にまとめる](03_clean_up_commit.md)
3535
* 目次: [README](README.md)
3636

02_amend_commit_log_answer.md

+8-1
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,11 @@ commit.txtに5th commitの文字列を追加し、直近のコミットに変更
3535
[master 895b5ec] 4th & 5th commit
3636
Date: Mon Nov 3 10:19:17 2014 +0900
3737
1 file changed, 2 insertions(+)
38-
```
38+
```
39+
40+
### Link
41+
--------------------
42+
* Previous: [01_commit_3x : コミットを3回実施する問題](01_commit_3x.md)
43+
* Next: [03_clean_up_commit : 過去のコミットをまとめて修正する、綺麗にまとめる](03_clean_up_commit.md)
44+
* 目次: [README](README.md)
45+

03_clean_up_commit

Submodule 03_clean_up_commit added at 1fe37aa

03_clean_up_commit.md

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
03_clean_up_commit : 過去のコミットをまとめて修正する、綺麗にまとめる
2+
========
3+
4+
### 問題3-1
5+
--------------------
6+
今、03_clean_up_commitのgitレポジトリはBeforeの状態である。
7+
しかし、commit.txtの文字列は本来`XX line`にする予定だったが、誤って`XX commit`にしていることに後日気がついた。
8+
03_clean_up_commitのgitレポジトリをAfter1の状態にして、当初の予定通りの文字列をcommit.txtに記載せよ。
9+
10+
![quiz03-1](images/03-1_clean_up_commit.png)
11+
12+
### 問題3-2
13+
--------------------
14+
無事修正が終わったと思いきや、コミットログコメントにtypeがあった。
15+
このままだと格好が悪いので、`4&5th commmit``4&5th commit`に修正したい。
16+
02_amend_commit_logのgitレポジトリをAfter1からAfter2の状態に修正せよ。
17+
18+
![quiz03-2](images/03-2_clean_up_commit.png)
19+
20+
### 解答
21+
--------------------
22+
23+
[問題3−1の解答](03_clean_up_commit_answer.md#ans3-1)
24+
[問題3−2の解答](03_clean_up_commit_answer.md#ans3-2)
25+
26+
### Link
27+
--------------------
28+
* Previous: [02_amend_commit_log : 直近のコミット、コミットログを修正する問題](02_amend_commit_log.md)
29+
* Next:
30+
* 目次: [README](README.md)
31+

03_clean_up_commit_answer.md

+101
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
03_clean_up_commit : 過去のコミットをまとめて修正する、綺麗にまとめる
2+
========
3+
4+
### 問題3-1
5+
--------------------
6+
今、03_clean_up_commitのgitレポジトリはBeforeの状態である。
7+
しかし、commit.txtの文字列は本来`XX line`にする予定だったが、誤って`XX commit`にしていることに後日気がついた。
8+
03_clean_up_commitのgitレポジトリをAfter1の状態にして、当初の予定通りの文字列をcommit.txtに記載せよ。
9+
10+
### <a name="ans3-1">問題3−1 解答</a>
11+
--------------------
12+
```
13+
➤ git rebase -i --root
14+
15+
#(1st commit -> 1st lineに変更)
16+
➤ vim commit.txt
17+
➤ git add commit.txt
18+
➤ git commit --amend
19+
➤ git rebase --continue
20+
21+
#(2nd commit -> 2nd lineに変更&conflictの解消)
22+
➤ vim commit.txt
23+
➤ git add commit.txt
24+
➤ git rebase --continue
25+
26+
#(3rd commit -> 3rd lineに変更&conflictの解消)
27+
➤ vim commit.txt
28+
➤ git add commit.txt
29+
➤ git rebase --continue
30+
31+
#(4,5th commit -> 4,5lineに変更&conflictの解消)
32+
➤ vim commit.txt
33+
➤ git add commit.txt
34+
➤ git rebase --continue
35+
36+
➤ git log --oneline
37+
d4e70a9 4&5th commit
38+
f0be864 3rd commit
39+
f20659e 2nd commit
40+
7714ceb 1st commit
41+
42+
#rebaseの結果確認
43+
➤ cat commit.txt
44+
1st line
45+
2nd line
46+
3rd line
47+
4th line
48+
5th line
49+
```
50+
51+
### 問題3-2
52+
--------------------
53+
無事修正が終わったと思いきや、コミットログコメントにtypeがあった。
54+
このままだと格好が悪いので、`4&5th commmit``4&5th commit`に修正したい。
55+
02_amend_commit_logのgitレポジトリをAfter1からAfter2の状態に修正せよ。
56+
57+
58+
### <a name="ans3-2">問題3−2 解答</a>
59+
--------------------
60+
```
61+
#綺麗にまとめる前のコミットログの確認
62+
➤ git log --oneline
63+
d4e70a9 4&5th commit
64+
f0be864 3rd commit
65+
f20659e 2nd commit
66+
7714ceb 1st commit
67+
68+
#HEADの位置の確認
69+
➤ git graph
70+
* d4e70a9 (HEAD, master) 2014-11-03 Takayuki WATANABE 4&5th commit
71+
* f0be864 2014-11-03 Takayuki WATANABE 3rd commit
72+
* f20659e 2014-11-03 Takayuki WATANABE 2nd commit
73+
* 7714ceb 2014-11-03 Takayuki WATANABE 1st commit
74+
75+
➤ git rebase -i HEAD~~~
76+
#rebaseの内容
77+
pick f20659e 2nd commit
78+
s f0be864 3rd commit
79+
s d4e70a9 4&5th commit
80+
81+
#コミットがまとまっているか確認
82+
➤ git log --oneline
83+
9c7ae76 2nd&3rd&4&5th commit
84+
7714ceb 1st commit
85+
86+
#rebase結果の確認
87+
➤ cat commit.txt
88+
1st line
89+
2nd line
90+
3rd line
91+
4th line
92+
5th line
93+
94+
```
95+
96+
### Link
97+
--------------------
98+
* Previous: [02_amend_commit_log : 直近のコミット、コミットログを修正する問題](02_amend_commit_log.md)
99+
* Next:
100+
* 目次: [README](README.md)
101+

README.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,9 @@ $ git submodule update
1717
### 初級 : 基本のコマンドを学ぶ
1818
----------------------
1919
#### ローカルレポジトリの操作
20-
* [01_commit_3x : コミットを3回実施する問題](01_commit_3x.md)
21-
* [02_amend_commit_log : 直近のコミット、コミットログを修正する問題](02_amend_commit_log.md)
20+
* [01_commit_3x : コミットを3回実施する](01_commit_3x.md)
21+
* [02_amend_commit_log : 直近のコミット、コミットログを修正する](02_amend_commit_log.md)
22+
* [03_clean_up_commit : 過去のコミットをまとめて修正する、綺麗にまとめる](03_clean_up_commit.md)
2223

2324

2425

images/02-2_amend_commit_log.png

3.01 KB
Loading

images/03-1_clean_up_commit.png

54.5 KB
Loading

images/03-2_clean_up_commit.png

46.4 KB
Loading

0 commit comments

Comments
 (0)