自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Git提交代碼錯了吃后悔藥的幾種常用辦法

系統(tǒng)
寫代碼都會犯錯誤,不小心提交了一個錯誤我該怎么辦?提交的描述信息我該怎么辦?如果你也遇到這個問題,那么今天胖哥分享的這篇文章將非常適合你。

[[349779]]

1. 前言

寫代碼都會犯錯誤,不小心提交了一個錯誤我該怎么辦?提交的描述信息我該怎么辦?如果你也遇到這個問題,那么今天胖哥分享的這篇文章將非常適合你。

2. Commit 錯了怎么辦

放心都是有后悔藥吃的,我們來看看。

場景一

假如你git commit了一堆代碼,但是你發(fā)現(xiàn)本次Commit的描述信息有點隨意,你可以這樣:

  1. git commit --amend -m“新的提交消息” 

場景二

你本來打算Commit五個文件,但是由于疏忽你Commit了四個。當(dāng)然你可以再Commit一次來進(jìn)行彌補(bǔ)這個失誤。但是多了一次Commit,按道理它們應(yīng)該在一次Commit中。git commit --amend也能幫你解決這個問題:

  1. git add 忘記提交的文件 
  2. git commit --amend --no-edit 

場景三

有些項目比較嚴(yán)格,對提交者的信息(author)有要求。如果你Commit的作者不規(guī)范,也可以通過git commit --amend來解決:

  1. git commit --amend --author“felord<dax@felord.cn>” 

盡量確保這些錯誤在你本地提交時修復(fù),推送到遠(yuǎn)程時使用amend命令將會使得代碼歷史變得混亂。另外git commit -am可不是git commit --amend的簡寫。

場景四

提交錯了想撤回本次提交,無論是撤回遠(yuǎn)程的還是本地的,你可以使用git reset搞定,如下面這個例子:

  1. git log 
  2. # 最新的 
  3. commit e49850be48f25d58b977b778d59c48a41e482bb4 (HEAD -> master) 
  4. Author: felord.cn <dax@felord.cn> 
  5. Date:   Sun Nov 1 23:39:33 2020 +0800 
  6.  
  7.     'readme' 
  8. # 次新的 
  9. commit 8e7089f62ad8588f5710f23d6a8ce1158490032b (origin/master, origin/HEAD) 
  10. Author: felord.cn <dax@felord.cn> 
  11. Date:   Sun Nov 1 22:06:21 2020 +0800 

通過git log我們查詢獲得了最新的兩次提交,但是最新的提交e49850be48f25d58b977b778d59c48a41e482bb4 我們想撤回,也就是把最新的提交移動到第二個上面。我們只需要執(zhí)行 git reset --soft 目標(biāo)提交commitId,上述例子中的commitId=8e7089f62ad8588f5710f23d6a8ce1158490032b 。

git reset有四種模式 soft、mixed、hard、keep,說明如下:

借用IDEA的說明

git revert 也能實現(xiàn),區(qū)別在于revert會產(chǎn)生一次Commit,需要填寫提交信息。

場景五

代碼已經(jīng)推送到遠(yuǎn)程服務(wù)器了,我想撤回某個文件,你可以這么操作:

  1. # 查看文件歷史版本 
  2. git log <filename> 
  3. # 回滾到指定commitId 
  4. git checkout <commitId> <filename> 
  5. # 提交被修改的文件 
  6. git commit -m '回滾特定文件的變動' 
  7. # 推送 
  8. git push 

3. 總結(jié)

我經(jīng)常用的也就這些了,但是吃后悔藥的時候一定要小心,最好拉一個新分支在新分支上試試,不要強(qiáng)吃后悔藥,不然你會后悔的。目前像 IDEA 都是可視化操作你可以不用命令操作,不過胖哥個人覺得這些命令還是要熟悉的。

本文轉(zhuǎn)載自微信公眾號「 碼農(nóng)小胖哥」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系 碼農(nóng)小胖哥公眾號。

 

責(zé)任編輯:武曉燕 來源: 碼農(nóng)小胖哥
相關(guān)推薦

2020-07-08 11:07:32

Git撤銷代碼

2014-02-09 09:47:44

Windows 8.1Windows 8.1

2012-01-04 10:50:41

金山快盤文件存錯

2016-10-24 22:41:06

大數(shù)據(jù)Google

2022-04-28 09:02:55

Gitcommitlint配置

2017-02-06 19:17:28

云主機(jī)IT運維磁盤

2022-01-19 18:02:42

chrome插件使用者

2020-04-27 09:21:25

Android谷歌功能

2015-01-12 11:07:22

2017-08-21 15:54:47

IOS越獄工具

2015-07-20 11:47:46

Windows 10升級

2019-01-02 08:17:20

微信功能系統(tǒng)

2019-01-18 09:20:40

蘋果WiFi路由器

2021-03-19 08:16:03

數(shù)據(jù)庫

2021-01-22 05:55:12

GitAngularJStype

2021-05-22 06:42:34

Windows10操作系統(tǒng)微軟

2021-06-10 14:22:57

iOS 15iOS 14降級

2024-04-08 08:37:41

代碼githook

2021-02-19 09:01:37

Go項目模塊

2011-05-29 15:28:30

文件恢復(fù)360
點贊
收藏

51CTO技術(shù)棧公眾號