
- Git 入門
- Git - 首頁
- Git - 版本控制
- Git - 基本概念
- Git - 命令列
- Git - 安裝
- Git - 首次設定
- Git - 基本命令
- Git - 獲取幫助
- Git - 工具
- Git - 速查表
- Git - 術語
- Git 分支
- Git - 簡述分支
- Git - 建立新分支
- Git - 切換分支
- Git - 分支和合並
- Git - 合併衝突
- Git - 管理分支
- Git - 分支工作流程
- Git - 遠端分支
- Git - 跟蹤分支
- Git - 變基
- Git - 變基與合併
- Git - 壓縮提交
- Git 操作
- Git - 克隆操作
- Git - 打標籤操作
- Git - 別名操作
- Git - 提交操作
- Git - 暫存操作
- Git - 移動操作
- Git - 重新命名操作
- Git - 推送操作
- Git - 拉取操作
- Git - Fork 操作
- Git - 修補操作
- Git - Diff 操作
- Git - 狀態操作
- Git - 日誌操作
- Git - HEAD 操作
- Git - origin master
- Git 撤銷
- Git - 撤銷更改
- Git - Checkout
- Git - Revert
- Git - Reset
- Git - 恢復操作
- Git - Rm
- Git - Switch 操作
- Git - Cherry-pick
- Git - Amend
- Git 在伺服器上
- Git - 本地協議
- Git - 智慧 HTTP 協議
- Git - 啞 HTTP 協議
- Git - SSH 協議
- Git - Git 協議
- Git - 在伺服器上獲取 Git
- Git - 設定伺服器
- Git - 守護程序
- Git - GitWeb
- Git - GitLab
- Git - 第三方託管選項
- 分散式 Git
- Git - 分散式工作流程
- Git - 為專案做貢獻
- Git - 維護專案
- 自定義 Git
- Git - 配置
- Git - 鉤子
- Git - 屬性
- Git - Init
- Git - Commit
Git - 撤銷更改
Git 提供了多種撤銷更改的方法,具體取決於這些更改是未暫存、已暫存、已提交還是已推送到遠端儲存庫。
使用 --amend 撤銷提交
如果您忘記包含某些更改或檔案,可以使用 **--amend** 選項新增它們。此命令允許您將已暫存的更改新增到上一次提交中。
要使用 **--amend** 選項撤銷提交,請執行以下命令
您進行了一些更改並提交了它們。
git commit -m "First Commit"
提交後,您注意到在提交之前忘記暫存某個檔案中的某些更改。
-
您可以使用以下命令新增其他更改並暫存該檔案
git add main.html
-
您可以將 **--amend** 選項與 **git commit** 命令一起使用,以將已暫存的更改包含在上一次提交中。此命令將已暫存的更改新增到最近的提交中。
git commit --amend
取消暫存已暫存的檔案
如果您不小心使用 **git add *** 暫存了兩個檔案,但您想分別提交它們,則可以在保留另一個檔案已暫存狀態的同時取消暫存一個檔案。
要取消暫存已暫存的檔案,請使用以下命令
如果您不小心使用 **git add *** 命令暫存了兩個檔案。此命令將暫存當前目錄中的所有更改。
git add *
您可以使用 **git status** 命令獲取儲存庫的當前狀態,包括已暫存和未暫存的更改。
git status
-
當您執行以下命令時,它將從暫存區中刪除該檔案,並撤消對其進行的任何更改。
git reset HEAD <file_name>
使用 **git status** 命令再次檢查儲存庫的狀態,以確保已完成所需的修改。
git add * git status
命令 **git reset** 通常是安全的,因為它不會修改工作目錄中的檔案。但是,當使用 **--hard** 時,它可能會完全刪除更改。
取消修改已修改的檔案
您可以使用以下命令取消修改已修改的檔案
-
檢查當前儲存庫的狀態,並檢視哪些檔案有未提交的更改。
git status
-
將 **main.html** 檔案恢復到其原始狀態。
git checkout -- main.html
此命令將刪除對 **main.html** 檔案所做的任何修改,並將其恢復到上次提交的狀態。
您可以透過再次執行 **git status** 命令來驗證更改是否已恢復。
git status
使用 **git checkout -- <file>** 不安全,因為它會立即用檔案的最新已暫存或已提交版本替換任何本地更改。在使用此命令之前,請確保您確實想要刪除當前更改。
撤銷更改 - git restore
Git 2.23.0 版引入了新的命令 **git restore**,可以用它代替 **git reset** 來撤銷更改。
使用 git restore 取消暫存已暫存的檔案
您可以使用以下命令使用 **git restore** 命令取消暫存已暫存的檔案
如果您使用命令 **git add *** 暫存了兩個檔案。此命令將暫存當前目錄中的所有更改。
git add *
您可以使用 **git status** 命令獲取儲存庫的當前狀態,包括已暫存和未暫存的更改。
git status
-
您可以使用 **git restore** 代替 **git reset** 從暫存區中刪除檔案並撤消對其進行的任何更改。
git restore --staged <file_name>
使用 **git status** 命令確認所需的更改是否已完成。
git add * git status
使用 git restore 取消修改已修改的檔案
您可以使用以下命令使用 git restore 取消修改已修改的檔案
-
檢查當前儲存庫的狀態,並檢視哪些檔案有未提交的更改。
git status
-
將 **main.html** 檔案恢復到其原始狀態。
git restore main.html
此命令將刪除對 **main.html** 檔案所做的任何修改,並將其恢復到上次提交的狀態。
您可以透過執行 **git status** 命令確認對 **main.html** 的更改是否已撤消。
git status
使用 git restore <file> 不安全,因為它會立即用檔案的最新已暫存或已提交版本替換任何本地更改。在使用此命令之前,請確保您確實想要刪除當前更改。