iT邦幫忙

2021 iThome 鐵人賽

DAY 8
1
Modern Web

MacOS新手操作指令學習紀錄,成為裝B前端工程師之路系列 第 8

[Day8] Git學習筆記 -RE篇(MacOS)

  • 分享至 

  • xImage
  •  

前面兩天整理的筆記主要都在建立新的東西
今天就把修改用的指令做整理

1. revert - 重做上個commit

感覺上相對安全的方法,不會更動當前的 commit,而是加一個新的 commit,內容是上一個版本,如果發現只是烏龍一場,其實沒有做錯,還是可以回去之前的版本。

指令 功用說明
git revert HEAD 提交上個版本,因為時間軸是接續往後的,如果連續下這個指令,只會在現在這個版本和上個版本來回變動(歷史紀錄會變很長)
git revert commit代號1^...commit代號2^ 代號1是比較舊的版本,代號2是比較新的版本,把代號1到代號2之間的commit都revert

2. reset - 刪除上個commit

回到過去的commit,這個commit以後的commit就無法從 git log查詢到(要知道被刪掉版本的 hash才能回去)

  • reset後若要上傳到遠端數據庫,需要用 git push -f 強制上傳(因為現在的版本比遠端舊),在多人協做的時候要小心使用
指令 功用說明
git reset HEAD^ 退到上一次的commit
git reset commit代號 退到指定的commit

3. rebase - 刪除上個commit

昨天筆記有提到的 rebase,不是用來還原,這邊的 re + base是修改基準版本,因為會改變history,使用時機主要是只有自己在維護的分支,避免動到別人的history。

指令 功用說明
git rebase branch名稱 把指定分支當成當前分支的基準(所有commit合併成同一條線)

4. 其他修正

指令 功用說明
git checkout 檔案名稱 取消對該檔案的變更
git checkout . 取消本地所有檔案的變更
git commit --amend 改寫commit內容

上一篇
[Day7] Git學習筆記-分支篇 (MacOS)
下一篇
[Day9] Git學習筆記- cherry-pick & 使用 VSCode作為 GUI
系列文
MacOS新手操作指令學習紀錄,成為裝B前端工程師之路33
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言