git(五 合并提交命令)

場景:本地做了四次提交,想把第 2、3松忍、4 次提交合并跋理,只保留第二次提交的commit message

編輯器上的git記錄.png

解決方案
1择克、git reflog 查看所有的提交記錄

p.s. git reflog 可以查看所有分支的所有操作記錄(包括已經(jīng)被刪除的 commit 記錄和 reset 的操作);git log 命令可以顯示所有提交過的版本信息前普,看不到刪除的記錄肚邢。所以買后悔藥回退刪除記錄的時(shí)候,可以用 git reflog

命令行查看提交記錄.png

上面的圖片展示了拭卿,一共四次提交骡湖,按照時(shí)間倒序排列分別是 第 4、3峻厚、2响蕴、1次提交
2、git rebase -i “最新的一個(gè)想保留的 Commit”
意思是惠桃,我想合并2浦夷、3、4辜王,那么最新一個(gè)想保留的 commit 就是 第一次 commit劈狐,他的hash值為 ae9c811,輸入下列命令并回車

git rebase -i ae9c811

或者

# 即將可以編輯的信息不包括起點(diǎn)呐馆,包括終點(diǎn)肥缔,起點(diǎn)比終點(diǎn)距離現(xiàn)在時(shí)間久遠(yuǎn)
git rebase -i  [startpoint]  [endpoint]
rebase指定位置

3、選擇要合并的 commit :上述步驟完成后會(huì)跳出下圖界面
注意這個(gè)時(shí)候的順序:最近一次提交在最下面


選擇合并的commit及其指令.png

前面三行是我們需要操作的三個(gè) Commit汹来,每行最前面的是對該 Commit 操作的 Command续膳。關(guān)于每個(gè) Command 具體做什么改艇,下面的注釋寫得非常清楚。為了完成我們的需求坟岔,我們可以關(guān)注到這兩個(gè)命令:

# 使用該 Commit谒兄,但會(huì)被合并到前一個(gè) Commit 當(dāng)中
s, squash <commit> = use commit, but meld into previous commit
# 就像 squash 那樣,但會(huì)拋棄這個(gè) Commit 的 Commit message
f, fixup <commit> = like "squash", but discard this commit's log message

我們可以選擇把第 3炮车、4 次的commit message合并到第二次上面舵变,修改command如下,并保存退出:


修改command.png

4瘦穆、編輯合并 commit 的 commit message
上述步驟完成后纪隙,會(huì)跳出如下界面


編輯commitMessage.png

通過下面的注釋,我們可以知道扛或,這里其實(shí)就是一個(gè)編寫 Commit Message 的界面绵咱,帶 # 的行會(huì)被忽略掉,其余的行就會(huì)作為我們的新 Commit Message熙兔,于是悲伶,我們編輯一下,保存退出
編輯完成.png

5住涉、檢查:使用git log檢查

git log

結(jié)果如下:


log結(jié)果.png

注意麸锉,使用git reflog仍可以查看最初的命令:


reflog結(jié)果.png

兩者的區(qū)別在于,git log只顯示保留的舆声,git reflog可以顯示 reset 和 rebase花沉、刪除的版本

編譯器的可視化git工具中的展示:


image.png

這個(gè)時(shí)候再push,提交記錄上就非常好看了
請注意\color{red}{不要通過 rebase 對任何已經(jīng)提交到公共倉庫中的 commit 進(jìn)行修改}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末媳握,一起剝皮案震驚了整個(gè)濱河市碱屁,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蛾找,老刑警劉巖娩脾,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異打毛,居然都是意外死亡柿赊,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進(jìn)店門幻枉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碰声,“玉大人,你說我怎么就攤上這事展辞。” “怎么了万牺?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵罗珍,是天一觀的道長洽腺。 經(jīng)常有香客問我,道長覆旱,這世上最難降的妖魔是什么蘸朋? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮扣唱,結(jié)果婚禮上藕坯,老公的妹妹穿的比我還像新娘。我一直安慰自己噪沙,他們只是感情好炼彪,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著正歼,像睡著了一般辐马。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上局义,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天喜爷,我揣著相機(jī)與錄音,去河邊找鬼萄唇。 笑死檩帐,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的另萤。 我是一名探鬼主播湃密,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼仲墨!你這毒婦竟也來了勾缭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤目养,失蹤者是張志新(化名)和其女友劉穎俩由,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體癌蚁,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡幻梯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了努释。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片碘梢。...
    茶點(diǎn)故事閱讀 39,902評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖伐蒂,靈堂內(nèi)的尸體忽然破棺而出煞躬,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布恩沛,位于F島的核電站在扰,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏雷客。R本人自食惡果不足惜芒珠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望搅裙。 院中可真熱鬧皱卓,春花似錦、人聲如沸部逮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽甥啄。三九已至存炮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蜈漓,已是汗流浹背穆桂。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留融虽,地道東北人享完。 一個(gè)月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像有额,于是被迫代替她去往敵國和親般又。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容