溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

git中checkout怎么使用

發(fā)布時(shí)間:2022-01-04 17:09:19 來(lái)源:億速云 閱讀:439 作者:iii 欄目:軟件技術(shù)

這篇文章主要介紹“git中checkout怎么使用”,在日常操作中,相信很多人在git中checkout怎么使用問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”git中checkout怎么使用”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!

在git中,checkout是“檢出”的意思,該命令用于切換分支或者恢復(fù)工作樹(shù)文件,語(yǔ)法為“git checkout branchName”或者“ git checkout 參數(shù) 選項(xiàng) 分支”。

本文操作環(huán)境:Windows10系統(tǒng)、Git2.30.0版、Dell G3電腦。

git中checkout的用法是什么

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

1. 基礎(chǔ)

checkout最常用的用法莫過(guò)于對(duì)于工作分支的切換了:

git checkout branchName

該命令會(huì)將當(dāng)前工作分支切換到branchName。另外,可以通過(guò)下面的命令在新分支創(chuàng)建的同時(shí)切換分支:

git checkout -b newBranch

該命令相當(dāng)于下面這兩條命令的執(zhí)行結(jié)果:

1. git branch newBranch 
2. git checkout newBranch

該命令的完全體為:

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

該命令的一個(gè)應(yīng)用場(chǎng)景為:當(dāng)我們剛從git上clone一個(gè)項(xiàng)目后,我們可以查看該項(xiàng)目的分支情況

可以看到,克隆完后,只會(huì)默認(rèn)創(chuàng)建一個(gè)master本地分支,其他都是遠(yuǎn)程分支,此時(shí)如果我們想切換到newBranch的遠(yuǎn)程分支該怎么操作呢?方法有很多種,我們簡(jiǎn)單介紹兩種:

方法一:使用git checkout -b

 git checkout -b newBranch  origin/newBranch

方法二:使用git branch <branchname> [<start-point>]

git branch newBranch origin/newBranch
git checkout newBranch

方法一其實(shí)是方法二的簡(jiǎn)化版

2. 深入

要想更深入的了解checkout,我們需要了解checkout的作用機(jī)制。該命令的主要關(guān)聯(lián)目標(biāo)其實(shí)是.git 文件夾下的HEAD文件,我們可以查看工程下面的.git文件夾:

該文件夾下HEAD文件記錄了當(dāng)前HEAD的信息,繼續(xù)查看HEAD文件:

git中checkout怎么使用

可以看到當(dāng)前HEAD文件指向了refs/heads路徑下的master文件,該文件記錄了master分支最近的一次commit id,說(shuō)明當(dāng)前HEAD指向了master分支。如果我們將當(dāng)前分支切換到newBranch 分支,我們?cè)倏碒EAD文件:

可以看到HEAD文件內(nèi)容指向了newBranch分支

git中checkout怎么使用

3. 擴(kuò)展

用法1:

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

該命令主要用于檢出某一個(gè)指定文件。

如果不填寫(xiě)commit id,則默認(rèn)會(huì)從暫存區(qū)檢出該文件,如果暫存區(qū)為空,則該文件會(huì)回滾到最近一次的提交狀態(tài)。

例如:

當(dāng)暫存區(qū)為空,如果我們想要放棄對(duì)某一個(gè)文件的修改,可以用這個(gè)命令進(jìn)行撤銷(xiāo):

git checkout  [--] <paths>

如果填寫(xiě)commit id(既可以是commit hash也可以是分支名稱(chēng)還可以說(shuō)tag,其本質(zhì)上都是commit hash),則會(huì)從指定commit hash中檢出該文件。用于恢復(fù)某一個(gè)文件到某一個(gè)提交狀態(tài)。

用法2:

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

該命令是文章開(kāi)頭部分所說(shuō)的checkout常見(jiàn)用法的擴(kuò)展,我們可以指定某一個(gè)分支或者某一次提交來(lái)創(chuàng)建新的分支,并且切換到該分支下,該命令相當(dāng)于下面兩條命令的執(zhí)行結(jié)果:

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

到此,關(guān)于“git中checkout怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI