git中checkout的用法是什么
发布时间 - 2022-01-04 00:00:00 点击率:次在git中,checkout是“检出”的意思,该命令用于切换分支或者恢复工作树文件,语法为“git checkout branchName”或者“ 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[ ]
该命令的一个应用场景为:当我们刚从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文件:
可以看到当前HEAD文件指向了refs/heads路径下的master文件,该文件记录了master分支最近的一次commit id,说明当前HEAD指向了master分支。如果我们将当前分支切换到newBranch 分支,我们再看HEAD文件:
可以看到HEAD文件内容指向了newBranch分支
3. 扩展
用法1:
git checkout [] [--]
该命令主要用于检出某一个指定文件。
如果不填写commit id,则默认会从暂存区检出该文件,如果暂存区为空,则该文件会回滚到最近一次的提交状态。
例如:
当暂存区为空,如果我们想要放弃对某一个文件的修改,可以用这个命令进行撤销:
git checkout [--]
如果填写commit id(既可以是commit hash也可以是分支名称还可以说tag,其本质上都是commit hash),则会从指定commit hash中检出该文件。用于恢复某一个文件到某一个提交状态。
用法2:
git checkout -b[ ]
该命令是文章开头部分所说的checkout常见用法的扩展,我们可以指定某一个分支或者某一次提交来创建新的分支,并且切换到该分支下,该命令相当于下面两条命令的执行结果:
1. git branch[ ] 2. git checkout
推荐学习:《Git教程》
# git
# 我们可以
# 可以看到
# 都是
# 该文件
# 切换到
# 区为
# 可以说
# 两种
# 可以用
# 只会
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
如何快速搭建自助建站会员专属系统?
Laravel如何自定义分页视图?(Pagination示例)
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
Laravel如何使用Service Container和依赖注入?(代码示例)
如何获取上海专业网站定制建站电话?
Laravel如何生成和使用数据填充?(Seeder和Factory示例)
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
如何打造高效商业网站?建站目的决定转化率
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel如何实现多对多模型关联?(Eloquent教程)
如何用低价快速搭建高质量网站?
详解jQuery停止动画——stop()方法的使用
详解vue.js组件化开发实践
网站制作壁纸教程视频,电脑壁纸网站?
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
Laravel如何创建和注册中间件_Laravel中间件编写与应用流程
网站建设保证美观性,需要考虑的几点问题!
,在苏州找工作,上哪个网站比较好?
python中快速进行多个字符替换的方法小结
如何基于云服务器快速搭建个人网站?
如何为不同团队 ID 动态生成多个独立按钮
如何在景安服务器上快速搭建个人网站?
Python文件异常处理策略_健壮性说明【指导】
使用Dockerfile构建java web环境
JavaScript实现Fly Bird小游戏
php增删改查怎么学_零基础入门php数据库操作必知基础【教程】
Laravel如何处理异常和错误?(Handler示例)
网站建设要注意的标准 促进网站用户好感度!
高防服务器如何保障网站安全无虞?
如何在阿里云高效完成企业建站全流程?
什么是javascript作用域_全局和局部作用域有什么区别?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲
Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全
Laravel如何实现API版本控制_Laravel API版本化路由设计策略
米侠浏览器网页图片不显示怎么办 米侠图片加载修复
*服务器网站为何频现安全漏洞?
如何快速辨别茅台真假?关键步骤解析
Bootstrap整体框架之JavaScript插件架构
php json中文编码为null的解决办法
Win11怎么设置默认图片查看器_Windows11照片应用关联设置
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel DB事务怎么使用_Laravel数据库事务回滚操作
浅述节点的创建及常见功能的实现
如何在IIS服务器上快速部署高效网站?
图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?


ewBranch
git checkout newBranch