Git對本地修改情況的處理策略

2021-10-10 22:11:27 字數 1411 閱讀 9413

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

一,未使用 git add 快取**時。

可以使用 git checkout – filepathname (比如: git checkout – readme.md ,不要忘記中間的 「–」 ,不寫就成了檢出分支了!!)。放棄所有的檔案修改可以使用 git checkout . 命令。

此命令用來放棄掉所有還沒有加入到快取區(就是 git add 命令)的修改:內容修改與整個檔案刪除。但是此命令不會刪除掉剛新建的檔案。因為剛新建的檔案還沒已有加入到 git 的管理系統中。所以對於git是未知的。自己手動刪除就好了。

二,已經使用了 git add 快取了**。

可以使用 git reset head filepathname (比如: git reset head readme.md)來放棄指定檔案的快取,放棄所以的快取可以使用 git reset head . 命令。

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

三,已經用 git commit 提交了**。

你可以使用 git log 命令來檢視git的提交歷史。git log 的輸出如下,之一這裡可以看到第一行就是 commitid:

複製**

commit cf0d692e982d8e372a07aaa6901c395eec73e356 (head -> master)

author: toyflivver [email protected]

date: thu sep 28 14:07:14 2017 +0800

多餘的空行

commit 14aa4d7ad4ac6fba59b4b8261d32e478e8cc99ff

author: toyflivver [email protected]

date: thu sep 28 14:06:44 2017 +0800

正常的**

commit da3a95c84b6a92934ee30b6728e258bcda75f276

author: toyflivver [email protected]

date: thu sep 28 13:58:12 2017 +0800

qbfcommit 267466352079296520320991a75321485224d6c6

author: toyflivver [email protected]

date: thu sep 28 13:40:09 2017 +0800

qbf複製**

可以看出現在的狀態在 commitid 為 cf0d692e982d8e372a07aaa6901c395eec73e356 的提交上(有 head -> master 標記)。

Git 對本地分支和遠端分支的建立,合併,刪除操作

git branch a 檢視本地分支 git branch 1,建立乙個名為 dev的分支,一般情況下是在mester分支或者當前分支基礎上建立乙個分支。git branch dev 2,切換到 dev 分支上 git checkout dev 3,也可以直接執行 git checkout b d...

git 使用 git reset 回退本地的修改

一 git 概念 工作區 working 相當於我們本地的檔案系統。暫存區 staging 通過git add命令,將本地工作區的檔案提交至暫存區。本地倉庫 local repo 通過git commit命令,把暫存區的所有檔案提交至本地倉庫。遠端倉庫 remote repo 通過git push命...

git 放棄本地某個檔案的修改,或所有修改

18 57 2015 11 17 git 放棄本地某個檔案的修改,或所有修改 git checkout 檔名 git checkout 放棄所有檔案的所有修改 git reset hard 版本號 返回到某個版本,放棄所有修改 有一種恢復會保留修改記錄,有一種不會保留修改記錄,請翻閱資料文件 推薦部...