搜尋
首頁開發工具Gitgit中checkout的用法是什麼

在git中,checkout是「檢出」的意思,該指令用於切換分支或恢復工作樹文件,語法為「git checkout branchName」或「 git checkout 參數 選項 分支」。

git中checkout的用法是什麼

本文操作環境:Windows10系統、Git2.30.0版、Dell G3電腦。

git中checkout的用法是什麼

#切克鬧(checkout)作為git中最為常用的命令之一,對它使用的熟練程度直接決定了你對git理解和掌握的熟練程度,因此我們有理由為這個命令好好的做總結。

1. 基礎

checkout最常用的用法莫過於對於工作分支的切換了:

git checkout branchName

該指令會將目前工作分支切換到branchName。另外,可以透過下面的命令在新分支創建的同時切換分支:

git checkout -b newBranch

該命令相當於下面這兩個命令的執行結果:

1. git branch newBranch 
2. git checkout newBranch

該命令的完全體為:

  git checkout -b|-B <new_branch> [<start point>]

該指令的一個應用場景為:當我們剛從git上clone一個專案後,我們可以查看該專案的分支情況

可以看到,複製完後,只會預設建立一個master本地分支,其他都是遠端分支,此時如果我們想切換到newBranch的遠端分支該怎麼操作呢?方法有很多種,我們簡單介紹兩種:

方法一:使用git checkout -b

 git checkout -b newBranch  origin/newBranch

方法二:使用git branch []

git branch newBranch origin/newBranch
git checkout newBranch

方法一其實是方法二的簡化版

2. 深入

要更深入的了解checkout,我們需要了解checkout的作用機制。該指令的主要關聯目標其實是.git 資料夾下的HEAD文件,我們可以查看工程下面的.git資料夾:

該資料夾下HEAD文件記錄了目前HEAD的信息,繼續查看HEAD文件:

git中checkout的用法是什麼

可以看到當前HEAD文件指向了refs/heads路徑下的master文件,該文件記錄了master分支最近的一次commit id,說明當前HEAD指向了master分支。如果我們將目前分支切換到newBranch 分支,我們再看HEAD檔:

可以看到HEAD檔內容指向了newBranch分支

git中checkout的用法是什麼

3. 擴充

用法1:

 git checkout [<commit id>] [--] <paths>

此指令主要用來檢出某一個指定檔。

如果不填寫commit id,則預設會從暫存區檢出該文件,如果暫存區為空,則該文件會回溯到最近一次的提交狀態。

例如:

當暫存區為空,如果我們想要放棄對某一個檔案的修改,可以用這個指令撤銷:

git checkout  [--] <paths>

如果填寫commit id(既可以是commit hash也可以是分支名稱還可以說tag,其本質上都是commit hash),則會從指定commit hash中檢出該文件。用來恢復某一個文件到某一個提交狀態。

用法2:

  git checkout -b <new_branch> [<start_point>]

該指令是文章開頭部分所說的checkout常見用法的擴展,我們可以指定某一個分支或某一次提交來建立新的分支,並且切換到此分支下,此指令相當於下面兩個指令的執行結果:

 1. git branch  <new_branch> [<start_point>]
 2. git checkout <new_branch>

推薦學習:《Git教學

以上是git中checkout的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
終極攤牌:git vs. github終極攤牌:git vs. githubMay 01, 2025 am 12:23 AM

Git是版本控制系統,GitHub是基於Git的代碼託管平台。 Git用於管理代碼版本和歷史,GitHub提供代碼託管和協作功能。 Git適用於所有需要版本控制的項目,GitHub適合團隊協作和開源項目。

git vs. github:開發人員的觀點git vs. github:開發人員的觀點Apr 30, 2025 am 12:14 AM

Git是分佈式版本控制系統,GitHub是基於Git的在線平台。 Git提供版本控制功能,如分支管理和提交歷史;GitHub提供協作工具,如代碼審查和項目管理。

git:版本控制系統,github:平台git:版本控制系統,github:平台Apr 29, 2025 am 12:31 AM

Git和GitHub是現代軟件開發的核心工具。 Git是一個分佈式版本控制系統,GitHub則是一個協作平台。使用Git和GitHub可以提高開發效率並增強團隊協作。

git:技術,github:平台git:技術,github:平台Apr 28, 2025 am 12:09 AM

Git是由林納斯·托瓦茲在2005年創建的分佈式版本控制系統,GitHub則是基於Git的在線協作平台。 Git通過快照記錄文件變化,支持分支模型,GitHub則提供PullRequest等工具提升協作效率。

GitHub的目的:版本控制,協作等等GitHub的目的:版本控制,協作等等Apr 27, 2025 am 12:05 AM

GitHub不僅僅是版本控制工具,它還提供協作、項目管理和社區交流功能。 1)版本控制:利用Git追踪代碼變化。 2)協作:通過PullRequest提交代碼變更。 3)項目管理:使用Issues和Project板塊管理任務。 4)社區交流:通過fork和參與開源項目進行學習和交流。

github vs. git:了解關鍵差異github vs. git:了解關鍵差異Apr 26, 2025 am 12:12 AM

Git和GitHub是不同的工具:Git是版本控制系統,GitHub是基於Git的在線平台。 Git用於管理代碼版本,GitHub提供協作和託管功能。

GitHub:代碼託管,協作和版本控制GitHub:代碼託管,協作和版本控制Apr 25, 2025 am 12:23 AM

GitHub是一個基於Git的分佈式版本控制系統,提供了版本控制、協作和代碼託管的核心功能。 1)創建倉庫、克隆、提交和推送更改是基本用法。 2)高級用法包括使用GitHubActions進行自動化、GitHubPages部署靜態網站和使用安全功能保護代碼。 3)常見錯誤如合併衝突、權限問題和網絡連接問題可以通過手動解決衝突、聯繫倉庫所有者和設置代理來調試。 4)優化工作流程的方法包括使用分支策略、自動化測試和CI/CD、代碼審查以及保持文檔和註釋清晰。

git:工具,github:服務git:工具,github:服務Apr 24, 2025 am 12:01 AM

Git和GitHub是不同的工具:Git是分佈式版本控制系統,GitHub是基於Git的在線協作平台。 Git通過工作區、暫存區和本地倉庫管理代碼,使用常見命令如gitinit、gitclone等。 GitHub提供代碼託管、PullRequest、IssueTracking等功能,基本流程包括創建倉庫、推送代碼和使用PullRequest協作。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境