git 命令学习实战

ArcGIS天地图矢量化秘籍:用重分类+ArcScan高效提取建筑轮廓线 本文详细介绍了利用ArcGIS重分类和ArcScan技术高效提取天地图建筑轮廓线的半自动化流程。通过动态中断值计算、多级重分类策略和ArcScan高级矢量化技巧,显著提升城市规划中的矢量化效率与精度,适用于中级GIS用户。 阅读详情

git checkout -b newBranch2 //新建名为newBranch的分支,同时切换到该分支。

 

1、git commit

图中:有C0和C1两个提交(在实际当中,C0,C1表示两个提交的hash值,一长串字符的),当前处于master分支,

使用命令:

git commit -m "本次提交提示信息"
git commit -m "本次提交提示信息"

此时有: HEAD->master->C1

使用后变为:

HEAD->master->C3

2、git branch

  • 使用前:

HEAD->master->C1;

 

git branch newBranch   //新建名为newBranch的分支,指向当前提交

变成:

HEAD->master->C1;

newBranch->C1;


git branch -a          //显示所有分支,包括本地分支和远端分支

显示结果为:


git branch -fnewBranch HEAD^  //将分支newBranch 指向当前提交(HEAD)的上一个(^)提交。如果当前分支不存在,则创建该分支;如果分支位置未指定,则默认为指向当前分支

此时:

HEAD->newBranch->C0;

master->C1;


git branch -d newBranch               //删除名为 newBranch的分支,当删除分支为以下情况会失败:1. 当前分支时; 2. master分支时; 3. 未知的分支时。

变成:

 

3、git merge

此时:

HEAD->master->C3;

bugFix->C2;

git merge bugFix       //将当前分支与 bugFix 合并,重点注意:在实际操作过程中,合并时需要解决代码冲突问题。

此时:

HEAD->master->C4;

bugFix->C2;


4、git rebase

注意与 git merge 相比较,两者都是合并分支,merge更简单,保留所有信息;而rebase能得到更加清晰的工作流

此时:

HEAD->master->C3;

bugFix->C2;


git rebase bugFix      //将当前分支的父提交移到bugFix分支下,得到比merge具有更加线性的提交历史

变为:

HEAD->master->C3'

bugFix->C2;


5、git checkout 切换分支

此时:

HEAD->master->C2;


git checkout C2^       //切换分支,将HEAD指向C2的父提交(^表示上一个提交)——C1 (此处C1代表这个提交的hashcode);

此时:

HEAD->C1;

master->C2;


git checkout -b bugFix //创建分支,并切换到该分支;

此时:

HEAD->bugFix->C1;

master->C2;


 

6、git log 显示日志

使用 git log 可以查看每一次提交的详细信息。

git log

7、git reset 和git revert 撤销更改

git reset 是真正的撤销,当前操作直接丢弃,而git revert  则是将你要撤销回退到的某个状态作为一个新的提交,使得新的提交与你要回退到的状态是一致的,达到撤销的效果,由于git reset只适用于本地的分支,因而:本地撤销一般使用 git reset;远程分支的撤销使用 git revert;

此时:

master->C1;

pushed->C2;//假设该分支与远端分支绑定

HEAD->local->C3;


git reset master       //将当前分支local撤销更改回退到master状态
git checkout pushed    //切换到pushed分支
git revert master      //使用revert将当前远端分支pushed回退到master状态

此时有:

master->C1;

local->C1;

HEAD->pushed->C1';


 

8、git cherry-pick 转移工作区

使用该命令可以将选定的提交记录转移到当前的位置<HEAD>下面。具体看图:

此时: HEAD->master->C1


git cherry-pick C3 C4C7       //将提交 C3 C4 C7 按顺序转移到当前位置之后


 

9、git tag 和 git describe

git tag<commit-name><tag-name>给某个提交打一个标记,一般是在一些特殊意义的提交打标记,比如标记名为版本号等。

git describe 则用来描述当前位置距离最近的一个标记点相差几个提交,输出格式为:<tag>_<numCommits>_g<hash>

此时:


git tag V0 C1  //给C1打上标记V0
git tag V2 side

git describe   //描述当前位置距离最近的标记相差几个提交

结果为:


C5距离最近标记V0相差3个提交: C2 C4 C5


10、git clone

在开始一个项目时,使用git clone <版本库的网址> 将远端版本库克隆到本地仓库。

在clone 之前远端仓库的样子:


git clone <版本库的网址>       //克隆目标版本库到本地仓库

此时,本地仓库和远端仓库示例如下:


其中 o/master为本地仓库的远端分支,与远端仓库的master分支相互映射,实际项目中,一般使用origin而不是o,名字格式为:<remote name>/<branch name>

注意:当前分支<HEAD>不能指向远端分支: o/master;这些分支的状态只伴随远端分支更新而更新,即使用push和pull等于远端相关的git操作时。


11、git fetch

git fetch 完成了两项工作:1> 下载本地仓库中未包含的提交;2> 更新我们的远端分支(如origin/master)。但不会:更新你的本地分支。


git fetch      //1> 下载本地仓库中未包含的提交;2> 更新我们的远端分支(如origin/master)


12、git pull

注意,此时 本地分支master 与远端分支 o/master 处于绑定状态。

如果不处于绑定状态则无法使用pull和push;因为如果没有绑定的话,不知道到底要pull哪一个分支下来,以及不知道将该分支push到哪个分支上去。


git pll        //实现两个功能,git fetch 以及git merge;

等价于:

git fetch

+

git merge o/master

注意:git pull --rebase的作用等同于 git fetch + git rebase,这样能够得到更加清晰线性的工作流

 

13、git push

提交当前代码到远端分支;注意:master与远端分支o/master相对应;

 

git push 之后,完成本地与远端的同步

git push --force

强行将当前分支提交到远端分支,即使会导致远端版本回滚;如果不存在映射的远端分支,则会创建对应的远端分支。

git push origin<localname> :<originname>

将指定的本地分支<localname> 推送到指定的远端分支 <originname>

 

DAC8568实战指南:如何用STM32实现8通道DAC精准控制(附代码) 本文提供DAC8568与STM32结合的实战指南,详细解析8通道16位DAC的精准控制方法。内容涵盖硬件连接、SPI配置、驱动层构建、时序调试及多通道同步输出等关键步骤,并附有经过验证的HAL库驱动代码,帮助工程师快速解决实际项目中的通信与输出稳定性问题。 阅读详情

相关推荐

产品经理-面试题目--持续更新

答:面试官,你好,我叫XXX,来自于XXXX,我系统的学习过软件开发,也主动的积累了不少产品方面的实战经验,在学习期间,我自己独立的完成了2个深度项目,一个是仿抖音的短视频APP全流程设计,另外一个是电商后台系统的模块,通过这些项目,我不仅熟练使用Axure等工具做出高保真原型图和清晰的产品框架,也形成了数据驱动和用户优先的思维习惯,另外,我也注重拓展自己的能力边界,拿到了CAIE人工智能证书,我希望能把AI能力融入到产品场景,提升体验和效率,我非常喜欢产品工作带来的创造性和逻辑性,希望有机会加入贵公司。

m0_63966958的博客 958

git pull

在解决冲突时,有时可能需要其他开发者的帮助,特别是当你不确定如何正确地解决某个冲突时。不要害怕询问有关该更改的背景或理由的问题。这有助于团队之间的通信,并确保冲突得到正确的解决。是 Git 版本控制系统中的一个命令,用于从远程存储库更新本地工作目录。从远程获取更新时,有可能会遇到冲突。这通常发生在你和其他开发者同时修改了同一个文件的同一个部分。试图合并更改时,Git可能不知道应该保留哪一个版本,因此它会引发一个冲突,并要求你手动解决。是一个常用命令,用于保持本地工作目录与远程存储库同步。

加油加油 1217

【深度避坑】Word 提示“内存或磁盘空间不足,保存失败”的真正原因与终极解决方案

这是 Word 2003 时代的老功能⚠现代 Office 使用全新的保存 API(与 OneDrive 深度集成)老插件无法兼容现代保存机制会拦截 Word 的写入流程导致保存动作失败,Word 误以为磁盘坏了,于是报错不是磁盘坏了,是 Word 被插件绊倒了。Word 无法保存 = 加载项冲突(尤其是书法 / 稿纸向导)。永久禁用即可彻底恢复。如果在写毕业论文、要交文档,强烈建议马上检查一下你的加载项,避免后期出现大规模崩溃丢稿。

m0_59029415的博客 3077

Git教程 git pull 和 git clone的区别

.

我是菜鸡 2万+

threekingdoms.txt中文三国演义下载及实现人物出场统计

threekingdoms.txt全文下载:https://python123.io/resources/pye/threekingdoms.txt CalThreeKingdomsV1.py: #CalThreeKingdomsV1.py import jieba txt = open("threekingdoms.txt", "r", encoding = "utf-8").read() words = jieba.lcut(txt) counts = {} for word in words:

ZYYRWish_97的博客 1万+

细节增强卷积DEConv详解及代码复现

这种预训练模型能够捕捉图像的基本特征,为后续的端到端训练提供良好的初始参数。例如,在RESIDE和RESIDE-6K数据集上的实验结果表明,使用MSPLCK模块的MixDehazeNet-L模型在RESIDE-IN数据集上首次超过了42dB的PSNR指标,且在所有数据集上均优于先前的方法。例如,在RESIDE和RESIDE-6K数据集上的实验结果表明,使用MSPLCK模块的MixDehazeNet-L模型在RESIDE-IN数据集上首次超过了42dB的PSNR指标,且在所有数据集上均优于先前的方法。

hasakie的博客 1912

git操作

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考提示:这里对文章进行总结:例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

晴山の博客 7859

手把手教你用TUSB2E22中继器实现eUSB2与USB 2.0互转(附实测数据对比)

本文详细介绍了如何利用TUSB2E22中继器实现eUSB2与USB 2.0的高效互转,包括技术背景、硬件设计要点、信号完整性测试方法及故障排查策略。通过实测数据对比,展示了TUSB2E22在信号延迟、功耗和眼图性能上的显著优势,为工程师提供了实用的工程方案。

weixin_29199873的博客 284

Git的基本命令和操作

一、初始化本地库(你要用Git管理这个目录,首先要让git获取这个目录的管理权,所以要先初始化) git init 二、设置用户签名 (后期在提交的时候可以区分不同开发人员的身份) git config user.name "你的姓名" git config user.email "你的邮箱" 三、 查看本地库状态 git status

Kodomo 156

从外包到转正:一个华为OD亲历者的真实工作体验与避坑指南

本文分享了一位华为OD员工从外包到转正的真实经历与实用建议。通过详细解析华为OD的日常工作、转正核心指标、机试备考技巧及职场突围策略,为读者提供了一份全面的避坑指南。特别针对机试E卷的高频考点和刷题方法,给出了具体的数据分析和实战经验。

weixin_33686714的博客 709

DDPM代码详细解读(2):Unet结构、正向和逆向过程、IS和FID测试、EMA优化

Diffusion Models专栏文章汇总:入门与实战 前言:大部分DDPM相关的论文代码都是基于《Denoising Diffusion Probabilistic Models》和《Diffusion Models Beat GANs on Image Synthesis》贡献代码基础上小改动的。官方的DDPM是tensorflow TPU版本,暂时没有GPU的版本。上一篇文章介绍了数据集加载,超参数的含义、关键参数的计算方法等,这一篇重点解读一下网络结构。 目录 EMA优化 训练目标.

沉迷单车的追风少年 1万+

gitlap的使用

目录: git家族成员 Git:是一种版本控制系统,是一个命令,是一种工具。 Gitlib:是用于实现Git功能的开发库。 Github:是一个基于Git实现的在线代码托管仓库,包含一个网站界面,向互联网开放。 GitLab:是一个基于Git实现的在线代码仓库托管软件,你可以用gitlab自己搭建一个类似于Github一样的系统,一般用于在企业、学校等内部网络搭建git私服。 使用 Git云端代码和本地代码库代码(本地仓库) 使用eclipse创建项目同步到gitla

yiguang_820的博客 504

飞牛fnNAS虚拟机标准安装

飞牛NAS是一款基于Debian开发的国产免费NAS系统,支持x86架构设备,可将闲置硬件改造为NAS服务器。系统安装简便,支持多种存储模式与硬盘休眠功能,具备智能影视管理、照片备份等实用功能,并提供多种远程访问方式。飞牛NAS还支持Docker扩展,目前已承诺永久免费。文章详细介绍了在VMware虚拟机中安装飞牛NAS的步骤,包括下载镜像、创建虚拟机、初始化设置等过程,并展示了创建共享文件夹等基本操作,帮助用户快速上手这款功能强大的免费NAS系统。

dgnankai的专栏 3262

Git学习笔记(命令、实战、踩坑记录)

Android开发DEMO大全 布局管理器 普通UI组件 高级UI组件 事件、手势 资源文件 提示框、对话框、通知、广播 绘图、动画 音频、视频、摄像头 数据存储 Handler消息处理 传感器 地图定位 actionBar Intent fragment Activity Service Broadcast ContentProvider 其他 布局管理器 frameLayout帧式布局 &...

干嘛卷来卷去的博客 680

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

终极Git可视化学习工具:git-sim命令详解与实战指南

git-sim是一款革命性的Git操作可视化工具,它能通过单个终端命令在你的代码仓库中直观地模拟Git操作。无论是Git新手还是有经验的开发者,都能通过动态图形化展示轻松理解复杂的Git命令执行过程,让版本控制学习变得简单高效。 ## 🚀 快速开始:安装与基础配置 要开始使用git-sim,首先需要克隆项目仓库到本地: ```bash git clone https://gitcode.c

gitblog_00556的博客 873

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

git命令实战随记(学习笔记之三)

1、查看文件提交记录执行 git  log  文件名     进行查看历史记录git log  --pretty=oneline 文件名      简易信息查看指针,指向的提交2、回退历史git  reset  --hard HEAD^   回退到上一次提交git  reset  --hard HEAD~n  回退n次操作3、版本穿越进行查看历史记录的版本号,执行 git  reflog  文件名...

管他学海无涯,一寸有一寸的欢喜 286

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Git学习

Git常用命令总结在学习Git需要清楚的几个术语 代码提交流程 $ git stash $ git fetch origin master $ git rebase origin/master $ git add -A $ git commit -m “comment” $ git push origin HEAD:refs/for/master 学习推荐: [1] https://www.li

walker lee 695

git命令实战入门helloworld(学习笔记之二)

1.创建版本库    在项目文件夹内,执行:  git  init第一:选择一个文件夹,在本地文件夹进入git的操作窗口第二:执行git init命令文件夹会创建.git的一个隐藏文件夹,里面放着项目的信息,它会随着项目的开发越来越大第二:执行vim a.txt命令创建一个文件(这里的操作和linx下的操作很相似)第三:注意!这个时候文件还没有被放入git的库里,用 git status命令来查看...

管他学海无涯,一寸有一寸的欢喜 333

Git 学习看这篇就够了!

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。 可能新手会问“git和github有什么关系啊?” git是一个版本控制工具; github是一个用git做版本控制的项目托管平台; git的使用也是实际开发工作中不必可少的、必须熟练掌握的技能之一,但或许有小伙伴并不清楚如何使用git,因此这里就总结一下关于git的资源,希望对你有所帮助...

alss13237的博客 95

如何学习git:git学习之路

Git熟练度 = 基础概念理解 × 实际操作次数 × 解决问题经验最重要的三点:不要急:Git是一个需要时间沉淀的技能多实践:理论再好,不如动手操作一次敢试错:Git的设计很安全,大胆尝试各种命令开始你的Git学习之旅吧!🚀记住:每个Git大师都是从第一次git init开始的。你的Git学习之路,就从今天开始!

2401_82411601的博客 939

GIT命令(急速学习)

《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》,点击传送门,即可获取!看完后还是要自己动手,遇到问题然后解决。浓缩下git教程git总体的流程图git有三种状态:Change, Staged, Committed。git init:初始化一个目录,其实就是加了一个.git的隐藏目录git clone:远程复制一个完整的repository到本地,比如git clonegit://github.com/schacon/simplegit.git,就是从git://github.c

2301_79963818的博客 645

git 怎么切换分支命令_【基础知识】Git实战记录

虽然已经使用了很久Git,但是一直属于蒙蔽状态,还没有完全掌握其功能,也没有将其发挥出百分百的作用,所以特此记录一次完整的Git实战演练。——感谢B站up主 老陈打码 respect respect respect。一.初始化Git在常用的工作目录下创建一个Codes文件夹(该文件夹将作为本次实战演练的测试文件夹),在该文件夹下右击鼠标 选择Git Bash Here ,输入命令:gi...

weixin_34352565的博客 2914

git bash命令_这7个免费的Git教程/课程,适合所有程序员

程序员书库(ID:CodingBook) 猿妹编译链接:https://hackernoon.com/7-free-git-tutorials-classes-and-courses-for-programmers-at-any-skill-level-u22m3udu你一定用过一些源码控制软件,例如CVS,SVN,VSS,DFS等,Git和这些的区别是,Git是一个开源的分布式版本控制...

weixin_39955423的博客 132

程序员必备基础:Git 命令全方位学习

掌握Git命令是每位程序员必备的基础,之前一直是用smartGit工具,直到看到大佬们都是在用Git命令操作的,回想一下,发现有些Git命令我都忘记了,于是写了这篇博文,复习一下~文章目录Git是什么?Git的相关理论基础日常开发中,Git的基本常用命令Git进阶之分支处理Git进阶之处理冲突Git进阶之撤销与回退Git进阶之标签tagGit其他一些经典命令百度百科定义是酱紫的~版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一。

java小白翻身 1044

Git命令实战:新手必学的日常工作流

git status- 看状态git add .- 添加修改git commit -m "说明"- 提交修改git push- 推送到远程记住经常commit,每完成一小步就commitcommit信息要清楚,说人话每天开始前git pull,结束时git push不要害怕出错,Git可以撤销大部分操作从今天开始,让Git成为你编程路上的好伙伴!刚开始学Git时你遇到过什么困惑?欢迎在评论区分享!

2401_82411601的博客 477

Git 使用详细教程(入门到实战)

在项目开发时,为了高效开发,都会用到版本控制工具,如svn、Git等,但当前发展情况来看,使用Git的开发者越来越多。

IT_WEH_coder的博客 1044
上一篇: 学习Git命令之二
nolan_coder
博客等级 码龄10年 0粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值