Git知识学习

news/2023/5/28 8:15:47

主要内容:熟练掌握Git、GitHub、GitLab、Gitee码云的使用

文章目录

  • 1.Git概述
    • 1.1版本控制
    • 1.2版本控制工具
    • 1.3Git和代码托管中心
  • 2.Git常用命令
    • 2.1设置用户签名
    • 2.2初始化本地库
    • 2.3查看本地库状态
      • 2.3.1首次查看
      • 2.3.2新增文件
      • 2.3.3再次查看
    • 2.4添加暂存区
    • 2.4.1将工作区文件添加到暂存区
      • 2.4.2查看状态(检测到暂存区有新文件)
    • 2.5提交本地库
      • 2.5.1将暂存区的文件提交到本地库
      • 2.5.2查看状态(没有文件需要提交了)
    • 2.6修改文件
      • 2.6.1查看状态(检测到文件被修改)
      • 2.6.2将修改后的文件提交到暂存区
    • 2.7历史版本
      • 2.7.1查看历史版本
      • 2.7.2版本穿梭
  • 3.Git分支操作
    • 3.1分支的概念
    • 3.2分支操作
    • 3.3合并分支(冲突合并)
  • 持续更新中......

1.Git概述

  • Git是个免费的、开源的分布式版本控制系统

1.1版本控制

  • 版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统

  • 版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换

1.2版本控制工具

  • 集中式版本控制工具:CVS、SVN、VSS…
    • 程序员修改代码之后要上传到中央服务器,另外一名程序员才能再中央服务器将代码下载下来修改
    • 缺点:当中央服务器宕机单点故障,则在故障期间谁都无法提交更新,也无法协同工作
  • 分布式版本控制工具:Git、Mercurial、Bazaar
    • 可以在自己的电脑上做版本的控制,会有一个远程库,让不同的程序员协同工作,当远程库宕机或者故障,只是不能提交更新,但是还是可以在自己的电脑上做版本控制

1.3Git和代码托管中心

  • 代码托管中心是基于网络服务器的远程仓库,一般简称为远程库
    • 局域网:GitLab
    • 互联网:GitHub(外网)、Gitee码云(国内网站)

2.Git常用命令

命令名称作用
git config --global user.name 用户名设置用户签名
git config --global user.email 邮箱设置用户签名
git init初始化本地库
git status查看本地库状态
git add 文件名添加到暂存区
git commit -m “日志信息” 文件名提交到本地库
git reflog查看历史记录
git reset --hard 版本号版本穿梭

2.1设置用户签名

  • 首次使用Git一定要在Git Bash窗口设置用户签名:
git config --global user.name 用户名
git config --global user.email 邮箱

2.2初始化本地库

  1. 语法:

    git init

  2. 示例:

    要想让git可以操作gitdemo这个文件夹,则要在当前文件夹下先进行初始化

在这里插入图片描述

​ 可以使用ll -a查看被隐藏的.git文件,如果有.git文件说明初始化成功

在这里插入图片描述

2.3查看本地库状态

2.3.1首次查看

  1. 语法:

    git status

  2. 示例:

    在这里插入图片描述

    可以看到目前没有提交过东西,也没有东西可以提交。

2.3.2新增文件

在这里插入图片描述

  • 新增一个hello.txt文件
  • 进入到vim模式之后,按"i"进入插入模式,可以编辑代码
  • 编辑完之后按esc退出插入模式
  • 按shift+;后再按wq,回车,保存并退出vim模式
  • 输入ll命令查看是否新增文件

在这里插入图片描述

2.3.3再次查看

  1. 语法:

    git status

  2. 再次查看:

在这里插入图片描述

​ 发现有hello.txt文件显示

2.4添加暂存区

2.4.1将工作区文件添加到暂存区

1.语法:

git add 文件名字

2.操作如下:(有警告不用管)

在这里插入图片描述

2.4.2查看状态(检测到暂存区有新文件)

在这里插入图片描述

  • 文件呈现绿色说明已经上传到暂存区,想删掉则用git rm --cached 文件名
  • 在暂存区删掉在工作区依旧存在

2.5提交本地库

2.5.1将暂存区的文件提交到本地库

1.基本语法:

​ git commit -m “日志信息” 文件名

2.示例:

在这里插入图片描述

3.通过查看日志来查看版本:

在这里插入图片描述

2.5.2查看状态(没有文件需要提交了)

在这里插入图片描述

2.6修改文件

1.修改文件:vim hello.txt,再按i修改文件即可。

2.6.1查看状态(检测到文件被修改)

在这里插入图片描述

2.6.2将修改后的文件提交到暂存区

在这里插入图片描述

  • 再次查看状态,就能发现文件名字变回绿色了。

在这里插入图片描述

  • 再次进行提交

在这里插入图片描述

在这里插入图片描述

2.7历史版本

2.7.1查看历史版本

1.基本语法:

git reflog 查看版本信息

git log 查看版本详细信息

2.示例:

在这里插入图片描述

2.7.2版本穿梭

1.基本语法:

git reset --hard 七位的版本号

2.示例:

在这里插入图片描述

3.Git分支操作

在这里插入图片描述

3.1分支的概念

在版本控制过程中,同时推进多个任务,我们就为每个任务创建一个分支,使用分支意味着程序员可以把自己的工作从开发的主线上分离开来,开发自己分支的时候不会影响主线的工作。

3.2分支操作

命令名称作用
git branch 分支名创建分支
git branch -v查看分支
git checkout 分支名切换分支
git merge 分支名把指定的分支合并到当前分支上

1.查看分支

在这里插入图片描述

2.创建分支

在这里插入图片描述

3.切换分支

在这里插入图片描述

4.合并分支(如果当所合并的分支有对原分支的文件进行修改,合并之后会显示修改后的内容)

在这里插入图片描述

3.3合并分支(冲突合并)

产生冲突的原因:合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改,Git无法代替我们使用哪个,便会产生冲突,此时必须人为的决定新代码内容:

  • 先切换到hot-fix分支中将hello.txt文件进行修改如下:

在这里插入图片描述

  • 再将修改好之后的文通过指令git add hello.txt添加到暂存区,然后使用git commit -m “hot-fix second” hello.txt提交日志
  • 再切换回master分支,对hello.txt中的系统位置的内容进行修改,并且提交到暂存区,使用git commit -m “master second” hello.txt提交日志

在这里插入图片描述

  • 便会出现报错如下,并且文件会将冲突的部分显现出来:

在这里插入图片描述

  • 手动修改完之后再对文件进行上传到暂存区,再提交日志(记得不用带文件名)即可

在这里插入图片描述

持续更新中…

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.exyb.cn/news/show-4574444.html

如若内容造成侵权/违法违规/事实不符,请联系郑州代理记账网进行投诉反馈,一经查实,立即删除!

相关文章

javaAPI操作-Zookeeper

## 4)ZooKeeper JavaAPI 操作 4.1)Curator介绍 •Curator 是 Apache ZooKeeper 的Java客户端库。 •常见的ZooKeeper Java API : •原生Java API •ZkClient •Curator •Curator 项目的目标是简化 ZooKeeper 客户端的使用。 •Curator 最初是 Netfix 研发的…

看到一个程序员成长之路 一点点感慨

刚才看到一个程序员的成长之路,感慨很多,先开个博客占个坑, 记录一下,同时也鼓励一下自己,坚持自己的路走下去。 机器学习, my love 例子中, 一个很一般的院校的毕业生,在毕业五年…

日常计算机网络基础练习题(每天进步一点点系列)

提示:好多小伙伴反映,直接看到答案不太好,那我把答案的颜色设置为透明,答案位置还是在题目后面,需要鼠标选中才能看见(操作如下图),同时为了手机端的小伙伴(手机端也可以…

【总结】程序人生,每天进步一点点,以及曾经的梦想

从开始有写博客念头的那一刻起,到现在已经有一年半时间了,最初的想法只是把遇到的一些问题记录下来,自己以后再遇到可以更方便的找到解决方案,所以写的很乱。很荣幸,每个月写博,而且坚持了下来。然后渐渐的…

Django 做个小后台,细节在完善一点点,滚雪球学 Python 第三阶段

橡皮擦,一个逗趣的互联网高级网虫。新的系列,让我们一起进入 Django 世界。 滚雪球学 Python 第三轮 三、Django 后台完善3.1 列表页展示内容修改3.2 列表自定义列实现3.3 列表搜索实现3.4 只读字段3.5 ModelAdmin 常用的属性和方法三、Django 后台完善 3.1 列表页展示内容修…

ElasticSearch Docker 部署实例

文章目录前言基本环境构建Java安装docker安装es部署安装ES验证安装安装kibana设置密码进入es容器安装Vim修改es容器配置文件设置es访问密码设置Kibana密码理想状态方案二修改挂载安装IK分词器安装ik分词器在线安装离线安装前言 虽然说要停更,但是有些东西还是需要记…

【每日进步一点点】C语言刷题技巧及训练1

恭喜你发现宝藏,这里是刹那芳间,很高兴为您服务~ C语言编程题 相信很多同学学校的C语言考试是上机做编程题叭,不要慌,这里将带你进行一个初步的入门,进行一些简单的编程题练习。 Anyway, 请一定要去多多实践&#xff…

攻防世界的一点点题

web进阶区 1.baby_web(想想初始页面是哪个) 初始页面:想到index.php 在地址栏处输入index.php,但是仍然返回的是1.php,,然后尝试用burp拦截 使用repeater模块 将1.php改为index.php ,得flag MISC新手区 1.pdf:给了一张pdf图片,说图下面什么都没有 哎&#xf…

shell脚本输出颜色

写shell脚本时,用echo命令输出内容,这我们都知道。但是怎么给输出内容上点色呢? 其实很简单,利用-e参数,即启用反斜杠转义的解释。 echo 对下列反斜杠字符进行转义: \a 警告(响铃) \b 退…

【宇麦科技】如何实现无密码登录?群晖Secure SignIn设置全解析

恶意攻击 蠕虫病毒 …… 安全隐患层出不穷 这些安全事件的背后 弱口令是黑客攻击常用的手段之一 利用弱密码,入侵系统并植入病毒 对于弱口令,如何兼顾便捷登录又能无惧泄露? 群晖 DSM 7.0 中推出了用于验证登录的 Synology Secure S…

如何随意复制网页上的文字

1.有些文章文字在某度上复制粘贴需要开通vip,这里教大家一个很简单的方法! 2在网页中直接 按住 Ctrl P 键 可调式出打印界面,选中需要打印的文字,可直接复制

最强解决网页复制文字等问题

完美解决文字无法复制问题 0.刚开始无法复制文字,右击复制需要登录,或者要vip 解决方法 1.在浏览器界面按FnF12调出页面源码控制台 2.点击设置 3.找到javascipt选项并打勾(禁用它) 4.别关闭这个设置界面,在要复制的页面可以完美得复制…

html5设置文字不能复制,网页文字不能复制?巧解网页文字不能复制

大家在上网的时候是否曾经遇到过网页文字无法复制的情况呢?为什么网页文字无法复制呢?或者问如何把不能复制的网页文字复制下来呢?其实,网页文字不能复制原因大部分是网页的制作者为了防止网页内容被被人盗用而设置了复制限制&…

复制网页上的文字

解决方法 第一步:按F12后,在页面的左边点击设置,如下图红色箭头所指。 第二步:勾选禁用JavaScript。 注意:然后就可以复制想要的文字了,不要关闭F12打开的页面,否则那个禁用JavaScript选项会…

怎么复制网页上不能复制的文字

们在浏览网页的时候,时常会觉得有的内容不错,想复制下来,却发现有的网页内容不能复制,今天就教大家如何解决这个问题。 虽然可以通过禁用脚本或是“查看源文件”,在源文件代码中复制需要的文章。不过复制文章的时候会有…

数据结构与算法----算法的时间复杂度和空间复杂度

通常,对于一个给定的算法,我们要做两项分析。 第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上; 第二部就是分析算法的时间复…

电路板上的连线也存在坑

关注、星标公众号,不错过精彩内容素材来源:Ittbank、电子森林我们设计电路图的时候,器件管脚之间的连线都是理想化的,但在实际的电路板上要通过有一定宽度、长度、厚度的导线进行连接,而且相邻的导线之间还会由于电磁作…

计算机考验数学 英语分数要求,2017年考研数学考情分析及分数线?

2017考研解析群:5175604742017年考研数学考试已经于25日上午11点30分正式结束,中公考研为大家发布2017考研数学答案,2017考研数学解析。同时也希望大家关注今天下午的专业课及答案!大家也可以关注2017考研解析专题,中公考研祝2017考生都可以取…

考研数学 妙题摘记(1) (极限的概念,性质及存在准则)

考研数学 妙题摘记(1) (极限的概念,性质及存在准则) 时间: 6月19日 作者: Joer-Tong 题目来源:历年真题(数一)全精解析 基础篇 题目 2008年第4题 4分 注:解析部分加上了个人的理解,会标注出来,如有错误欢迎指出 设函数f(x)在(−∞…

实变函数——集合与实数集(知识点和例题总结)

文章目录1.集合及其运算1.1 集合族1.2 幂集2.集合序列的极限3.映射4.集合的等价、基数5. Rn\R^nRn 的拓扑5.1 邻域与极限5.2 点集1.集合及其运算 1.1 集合族 定义 1 设 Λ\LambdaΛ 是一集合,∀\forall∀λ\lambdaλ ∈\in∈ Λ\LambdaΛ, 都指定一个集合AλA_\la…