Git详细安装和使用教程

文章目录

    • 准备工作-gitee注册
    • 认识及安装Git
    • Git配置用户信息
    • 本地初始化Git仓库
    • 记录每次更新到仓库
    • 查看及切换历史版本
    • Git忽略文件和查看文件状态
    • Git分支-查看及切换
    • Git分支-创建分支
    • Git分支-合并及删除分支
    • Git分支-命令补充
    • Git分支-冲突
      • 需求:

准备工作-gitee注册

传送门:

  1. gitee(码云): https://gitee.com/

注册+验证邮箱:

  1. 点击右上角的注册(注意: 姓名部分是昵称,不是真实姓名

  2. 注册完毕之后登录,屏幕右上角会出现如下提示,点击添加绑定
    在这里插入图片描述

  3. 在跳转的页面完成邮箱的新增+验证操作
    在这里插入图片描述

  4. 看到如下提示,说明绑定成功
    在这里插入图片描述

  5. 记住自己gitee邮箱用户名

认识及安装Git

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

传送门:关于版本控制

作用:

  1. 记录(项目)文件变化
  2. 查看记录信息
  3. 将文件切换到记录时的状态

安装-windows:

  1. 下载: https://git-scm.com/download/win

  2. 根据自己的电脑版本,下载对应的安装包(32或64位)
    在这里插入图片描述

  3. 双击安装:

    1. 不要安装在中文目录!!!!!
    2. 使用默认设置即可,一路下一步
  4. 安装完毕之后,在任意文件夹下鼠标右键,看到Git Bash here说明安装成功
    在这里插入图片描述

Git配置用户信息

安装完 Git 之后,要做的第一件事就是设置你的用户名和邮件地址。 因为每一个 Git 提交都会使用这些信息

传送门:初次运行的配置

步骤:

  1. window用户: 在任意位置打开git bash
  2. 输入命令:(#部分是注释
# 配置用户名
git config --global user.name "gitee注册的用户名"
# 配置邮箱
git config --global user.email gitee配置的邮箱
# 查看配置
git config --list
  1. 如果配置信息太多需要退出可以输入 q

  2. 终端使用补充:

按键作用
上下切换历史命令
tab键提示信息
clear清屏

本地初始化Git仓库

文档地址: 通常有两种获取 Git 项目仓库的方式

  1. 将 尚未进行版本控制 的本地目录 转为 Git仓库(初始化仓库)

  2. 从其他服务器 克隆 一个已存在的Git仓库

步骤: (windows)

  1. 创建新文件夹并在该文件夹下打开:

    • 进入文件夹

    • 在文件夹中点击鼠标右键,选择git bash here打开

  2. 输入命令 git init,看到有如下信息(图1)输出说明初始化成功,重复输入会有提示(图2
    在这里插入图片描述
    在这里插入图片描述

  3. 文件夹下可以看到有一个隐藏的**.git** 文件夹,*不要改动他

    • (windows)找到隐藏的文件:

      • 点击左上角的 查看

      • 把 **隐藏的项目 **选项勾上
        在这里插入图片描述

记录每次更新到仓库

文档地址:每当完成了一个阶段的目标,想要记录下它时,就将它提交到仓库。
在这里插入图片描述

步骤:

  1. 工作区开发(上一节创建的文件夹内
  2. 将修改后的文件添加到暂存区
  3. 将暂存区的文件记录到版本库
  4. 执行命令的时候可以看到下图类似的提示
# 添加到暂存区
git add .
# 记录到版本库
git commit -m"信息"

在这里插入图片描述

重复: 工作区开发 –> 添加到暂存区 git add . –> 记录到版本库 git commit -m"信息"

查看及切换历史版本

使用git记录到版本库之后,就可以查看并切换到对应的历史版本

命令:

  1. 命令执行的位置,就在上一节打开的终端,或git bash
  2. 核心命令如下
# 查看信息(简略)
git log --oneline
# 查看信息(完整),如果出现无法退出,可以按 q
git log
# 切换到指定版本
git reset --hard 版本号
  1. 拓展命令
# 查看完整历史(版本切换之后git log可能会出现无法查看的情况)
git reflog

Git忽略文件和查看文件状态

文档地址: 我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件。

步骤:

# 查看文件状态
git status
  1. 红色:工作区有文件更改,但没提交到暂存区
  2. 绿色:暂存区有文件更改,但没提交到版本库
  3. nothing to commit:没有任何文件更改
    在这里插入图片描述
    在这里插入图片描述

.gitignore 部分语法:

  1. 项目开发中,一般都会默认准备好.gitignore文件,了解基础语法即可
# 忽略 info.txt 文件
info.txt
# 忽略 .vscode/ 目录下所有的文件
.vscode
# 忽略目录下所有的 .md 结尾的文件
*.md
# 忽略 doc/目录下扩展名为 txt的文件
doc/*.txt

Git分支-查看及切换

文档地址: 使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。
在这里插入图片描述

图形说明:

  1. 底部蓝色是记录的信息,从左往右

  2. main,默认分支,初始化仓库之后就有

  3. HEAD,指向当前分支 main
    在这里插入图片描述

  4. 底部是记录的信息,从左往右

  5. main,默认分支,只记录了3次

  6. dev,开发分支,包含了main的3次记录,及自己的3次记录

  7. HEAD,指向当前分支 dev

注意: Git初始化仓库之后默认使用的分支名是 main(早期是 master),默认分支名不相同,不影响后续操作。现在已改回来。

操作命令

# 查看分支
git branch
# 切换分支
git checkout 分支名
# 重命名分支,如果默认是master,可以通过这个命令改为main
git branch -m 老分支 新分支

Git分支-创建分支

创建分支就是创建了一个新的可以移动的指针,默认的指向和原分支一样

操作命令

# 创建分支
git branch 新分支名

操作说明:

  1. 比如默认仓库状态如下:

    • 1个分支: main
    • 提交: 3次
    • 当前所在分支:main
      在这里插入图片描述
  2. 执行命令: git branch dev

    • 2个分支: maindev
    • 提交: 3次
    • 当前所在分支: main
      在这里插入图片描述
  3. 执行命令: git checkout dev

    • 2个分支: maindev
    • 提交: 3次
    • 当前所在分支: dev
      在这里插入图片描述
  4. 在dev分支,继续: 编码–>git记录(git add . git commit -m"信息"),并重复3次

    1. 2个分支: maindev
    2. 提交: 3次(main),6次(dev,包含了main
    3. 当前所在分支: dev
      在这里插入图片描述

Git分支-合并及删除分支

合并分支可以将某个分支上的所有commit,并到当前分支的commit

合并完毕之后,可以删除多余分支

操作命令:

# 将指定分支合并到当前分支
git merge 分支名
# 删除已合并的分支
git branch -d 分支名

操作说明:

  1. 上一节的仓库操纵完毕之后状态如下:

    • 2个分支: maindev
    • 提交: 3次(main),6次(dev
    • 当前所在分支:dev
      在这里插入图片描述
  2. 执行命令:git status

    • 查看是否有 还没提交的状态
    • 有,则执行 提交
    • 没有,则执行下面代码
  3. 执行命令:git checkout main (切换分支)

    1. 2个分支: maindev
    2. 提交: 3次(main),6次(dev
    3. 当前所在分支:main
      在这里插入图片描述
  4. 执行命令:git merge dev(合并分支)

    1. 1个分支: main
    2. 提交: 6次(main)
    3. 当前所在分支:main
      在这里插入图片描述

Git分支-命令补充

命令操作
git branch查看分支
git branch 新分支名创建分支
git checkout 分支名切换分支
git checkout -b 新分支名创建 + 切换分支
git merge 分支名合并分支
git branch -d 分支名删除分支
git branch -D 分支名强制删除分支
git branch -m 老分支名 新分支名重命名分支

Git分支-冲突

文档地址: 如果你在两个不同的分支中,对同一个文件的同一个部分进行了不同的修改,Git 就没法干净的合并它们。

需求:

基于提供的Git仓库和参考步骤测试合并时出现的冲突,解决冲突并记录

参考步骤:

  1. 分别在在devmain分支修改index.js文件(不同分支,相同文件,相同位置,不同修改)
  2. dev分支合并到main分支
    • 这时候会提示 合并冲突
  3. 根据VSCode的提示解决冲突并记录!!!!!!!!!
    1. 可以选择顶部那一排选项
    2. 1-3选了之后可以用ctrl+z撤销
    3. 4,选了之后会弹出新的页面,对比新旧修改,可以关闭
      在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

HDF4文件转TIF格式

HDF4 HDF4(Hierarchical Data Format version 4)是一种用于存储和管理机器间数据的库和多功能文件格式。它是一种自描述的文件格式,用于存档和管理数据。 HDF4与HDF5是两种截然不同的技术,HDF5解决了HDF4的一些重要缺陷。因此&am…

[终端安全]-3 移动终端之硬件安全(TEE)

(参考资料:TrustZone for V8-A. pdf,来源ARM DEVELOPER官网) TEE(Trusted Execution Environment,可信执行环境)是用于执行敏感代码和处理敏感数据的独立安全区域;以ARM TrustZone为…

cs231n作业1——Softmax

参考文章:cs231n assignment1——softmax Softmax softmax其实和SVM差别不大,两者损失函数不同,softmax就是把各个类的得分转化成了概率。 损失函数: def softmax_loss_naive(W, X, y, reg):loss 0.0dW np.zeros_like(W)num_…

信号与系统笔记分享

文章目录 一、导论信号分类周期问题能量信号和功率信号系统的线性判断时变,时不变系统因果系统判断记忆性系统判断稳定性系统判断 二、信号时域分析阶跃函数冲激函数取样性质四种特性1 筛选特性2 抽样特性3 展缩特性4 卷积特性卷积作用 冲激偶函数奇函数性质公式推导…

Ubuntu 20.04下多版本CUDA的安装与切换 超详细教程

目录 前言一、安装 CUDA1.找到所需版本对应命令2.下载 .run 文件3.安装 CUDA4.配置环境变量4.1 写入环境变量4.2 软连接 5.验证安装 二、安装 cudnn1.下载 cudnn2.解压文件3.替换文件4.验证安装 三、切换 CUDA 版本1.切换版本2.检查版本 前言 当我们复现代码时,总会…

彻底解决Path with “WEB-INF“ or “META-INF“: [WEB-INF/views/index.jsp]

背景描述 项目使用的是springboot2jsp的架构。以前好好的项目复制了一份,然后就无法访问报错。百度了好久都乱七八糟的,还没有解决问题。错误消息如下: 2024-07-05 15:45:51.335 INFO [http-nio-12581-exec-1]org.springframework.web.ser…

Linux服务器使用总结-不定时更新

# 查看升级日志 cat /var/log/dpkg.log |grep nvidia|grep libnvidia-common

阶段三:项目开发---搭建项目前后端系统基础架构:任务13:实现基本的登录功能

任务描述 任务名称: 实现基本的登录功能 知识点: 了解前端Vue项目的基本执行过程 重 点: 构建项目的基本登陆功能 内 容: 通过实现项目的基本登录功能,来了解前端Vue项目的基本执行过程,并完成基…

firewalld(8) policies

简介 前面的文章中我们介绍了firewalld的一些基本配置以及NAT的相关配置。在前面的配置中,我们所有的策略都是与zone相关的,例如配置的rich rule,--direct,以及NAT,并且这些配置都是数据包进入zone或者从zone发出时设置的策略。 我们在介绍…

昇思25天学习打卡营第15天 | Vision Transformer图像分类

内容介绍: 近些年,随着基于自注意(Self-Attention)结构的模型的发展,特别是Transformer模型的提出,极大地促进了自然语言处理模型的发展。由于Transformers的计算效率和可扩展性,它已经能够训练…

在VMware虚拟机的创建以及安装linux操作系统

一、创建虚拟机 1.双击打开下载好的VMware Workstation软件 2.点击“创建新的虚拟机” 3.根据个人选择需要创建的虚拟机,点击下一步 4.直接点击下一步 5.选择稍后安装操作系统,点击下一步 、 6.选择需要的操作系统,点击下一步 7.根据…

YOLOv8改进---BiFPN特征融合

一、BiFPN原理 1.1 基本原理 BiFPN(Bidirectional Feature Pyramid Network),双向特征金字塔网络是一种高效的多尺度特征融合网络,其基本原理概括分为以下几点: 双向特征融合:BiFPN允许特征在自顶向下和自…

【踩坑】修复pyinstaller报错 No module named pkg_resources.extern

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 报错如下: 修复方法: pip install --upgrade setuptools pippyinstaller -F -w main.py --hidden-importpkg_resources.py2_wa…

算法系列--分治排序|归并排序|逆序对的求解

一.基本概念与实现 归并排序(mergeSort)也是基于分治思想的一种排序方式,思路如下: 分解:根据中间下标mid将数组分解为两部分解决:不断执行上述分解过程,当分解到只有一个元素时,停止分解,此时就是有序的合并:合并两个有序的子区间,所有子区间合并的结果就是原问题的解 归并…

【TB作品】51单片机 Proteus仿真 00002仿真-智能台灯色调倒计时光强

实验报告:基于51单片机的智能台灯控制系统 背景 本实验旨在设计一个基于51单片机的智能台灯控制系统,该系统可以通过按键进行手动控制,并能根据环境光强度自动调节台灯亮度。此外,系统还具备倒计时关灯功能。 器件连接 51单片…

Xilinx FPGA:vivado关于真双端口的串口传输数据的实验

一、实验内容 用一个真双端RAM,端口A和端口B同时向RAM里写入数据0-99,A端口读出单数并存入单端口RAM1中,B端口读出双数并存入但端口RAM2中,当检测到按键1到来时将RAM1中的单数读出显示到PC端,当检测到按键2到来时&…

强化学习的数学原理:时序差分算法

概述 之前第五次课时学习的 蒙特卡洛 的方法是全课程当中第一次介绍的第一种 model-free 的方法,而本次课的 Temporal-Difference Learning 简称 TD learning (时序差分算法)就是第二种 model-free 的方法。而对于 蒙特卡洛方法其是一种 non…

QWidget窗口抗锯齿圆角的一个实现方案(支持子控件)2

QWidget窗口抗锯齿圆角的一个实现方案(支持子控件)2 本方案使用了QGraphicsEffect,由于QGraphicsEffect对一些控件会有渲染问题,比如列表、表格等,所以暂时仅作为研究,优先其他方案 在之前的文章中&#…

论文辅助笔记:ST-LLM

1 时间嵌入 2 PFA(Partial Frozen Architecture) 3 ST_LLM 3.1 初始化 3.2 forward

Idea新增Module报错:sdk ‘1.8‘ type ‘JavaSDK‘ is not registered in ProjectJdkTable

文章目录 一,创建Module报错二,原因分析三,解决方案1,点击上图的加号,把JDK8添加进来即可2,点击左侧[Project],直接设置SDK为JDK8 四,配置检查与验证 一,创建Module报错 …