Git 撤銷放棄本地修改


如果在修改時發現修改錯誤,而要放棄本地修改時:

一,未使用 git add 緩存代碼時:

可以使用 git checkout -- filepathname (比如: git checkout -- readme.md ,不要忘記中間的 “--” ,不寫就成了檢出分支了!!)。

放棄所有的文件修改可以使用 git checkout . 命令。

此命令用來放棄掉所有還沒有加入到緩存區(就是 git add 命令)的修改:內容修改與整個文件刪除。

但是此命令不會刪除掉剛新建的文件。因為剛新建的文件還沒已有加入到 git 的管理系統中。所以對於git是未知的。自己手動刪除就好了。

或者使用下面的命令(git clean命令只適用於當前文件夾,記得切換文件夾):

# 刪除 untracked files

git clean -f

# 連 untracked 的目錄也一起刪掉

git clean -df

 

二,已經使用了 git add 緩存了代碼:

可以使用 git reset HEAD filepathname (比如: git reset HEAD readme.md)來放棄指定文件的緩存,放棄所有的緩存可以使用 git reset HEAD . 命令。

此命令用來清除 git 對於文件修改的緩存。相當於撤銷 git add 命令所在的工作。在使用本命令后,本地的修改並不會消失,而是回到了如(一)所示的狀態。繼續用(一)中的操作,就可以放棄本地的修改。

 

三,已經用 git commit 提交了代碼:

可以使用 git reset --hard HEAD^ 來回退到上一次commit的狀態。此命令可以用來回退到任意版本:git reset --hard commitid

你可以使用 git log 命令來查看git的提交歷史。

git log命令總結

• git log --all 查看所有分支的歷史

• git log --all --graph 查看圖形化的 log 地址

• git log --oneline 查看單行的簡潔歷史。

• git log --oneline -n4 查看最近的四條簡潔歷史。

• git log --oneline --all -n4 --graph 查看所有分支最近 4 條單行的圖形化歷史。

• git help --web log 跳轉到git log 的幫助文檔網頁

 

 

四,git提交命令

git add -u:將文件的修改、文件的刪除,添加到暫存區。

將工作空間被修改和被刪除的文件添加到暫存區(不包含沒有納入Git管理的新增文件)

git add .:將文件的修改,文件的新建,添加到暫存區。

git add -A:將文件的修改,文件的刪除,文件的新建,添加到暫存區。

工作中一般是用到 git add . 或者 git add -A,。今天學習更進一步解了 git add -u 以及他們之間的區別

git add -A相對於git add -u命令的優點 : 可以提交所有被刪除、被替換、被修改和新增的文件到數據暫存區,而git add -u 只能操作跟蹤過的文件

git add -A 等同於git add -all

 

總結:

· git add -A 提交所有變化

· git add -u 提交被修改(modified)和被刪除(deleted)文件,不包括新文件(new)

· git add . 提交新文件(new)和被修改(modified)文件,不包括被刪除(deleted)文件

 

修改重命名文件:

git mv files Files 只需要一個操作
————————————————
版權聲明:本文為CSDN博主「白馬不是馬」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/kuodannie1668/article/details/91383496


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM