In git, checkout means "checkout". This command is used to switch branches or restore working tree files. The syntax is "git checkout branchName" or "git checkout parameter option branch".
The operating environment of this article: Windows 10 system, Git version 2.30.0, Dell G3 computer.
What is the usage of checkout in git
Checkout (checkout) is one of the most commonly used commands in git. Use it Your proficiency directly determines your proficiency in understanding and mastering git, so we have reason to make a good summary of this command.
1. Basics
The most commonly used use of checkout is to switch working branches:
git checkout branchName
This command will switch the current working branch to branchName. In addition, you can use the following command to switch branches while creating a new branch:
git checkout -b newBranch
This command is equivalent to the execution result of the following two commands:
1. git branch newBranch 2. git checkout newBranch
The complete form of this command is:
git checkout -b|-B <new_branch> [<start point>]
An application scenario of this command is: when we just clone a project from git, we can check the branch status of the project
You can see that after cloning, only By default, a master local branch is created, and the others are remote branches. At this time, what should we do if we want to switch to the remote branch of newBranch? There are many methods, we will briefly introduce two:
Method 1: Use git checkout -b
git checkout -b newBranch origin/newBranch
Method 2: Use git branch
git branch newBranch origin/newBranch git checkout newBranch
Method one is actually a simplified version of method two
2. Go deeper
To understand checkout more deeply, we need to understand the mechanism of checkout. The main associated target of this command is actually the HEAD file under the .git folder. We can view the .git folder under the project:
The HEAD file under this folder records the current HEAD information. Continue to view HEAD File:
You can see that the current HEAD file points to the master file under the refs/heads path. This file records the latest commit id of the master branch, indicating that the current HEAD points to The master branch. If we switch the current branch to the newBranch branch, we look at the HEAD file again:
You can see that the content of the HEAD file points to the newBranch branch
3. Extension
Usage 1:
git checkout [<commit id>] [--] <paths>
This command is mainly used to check out a specified file.
If you do not fill in the commit id, the file will be checked out from the staging area by default. If the staging area is empty, the file will be rolled back to the most recent submission status.
For example:
When the temporary storage area is empty, if we want to abandon the modification of a certain file, we can use this command to undo:
git checkout [--] <paths>
If you fill in commit id (which can be either a commit hash, a branch name, or a tag, which are essentially commit hashes), the file will be checked out from the specified commit hash. Used to restore a certain file to a certain commit state.
Usage 2:
git checkout -b <new_branch> [<start_point>]
This command is an extension of the common usage of checkout mentioned at the beginning of the article. We can specify a branch or a commit to create a new branch and switch to Under this branch, this command is equivalent to the execution results of the following two commands:
1. git branch <new_branch> [<start_point>] 2. git checkout <new_branch>
The above is the detailed content of What is the usage of checkout in git?. For more information, please follow other related articles on the PHP Chinese website!