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,选了之后会弹出新的页面,对比新旧修改,可以关闭
      在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

zabbix 与 grafana 对接

一.安装 grafana 1.初始化操作 初始化操作 systemctl disable --now firewalld setenforce 0 vim /etc/selinux/config SELINUXdisabled 2.上传数据包并安装 cd /opt grafana-enterprise-9.4.7-1.x86_64.rpm #上传软件包 yum localinstall -y grafana-enterprise-9.4.7-1…

Django QuerySet对象,exclude()方法

模型参考上一章内容: Django QuerySet对象,filter()方法-CSDN博客 exclude()方法,用于排除符合条件的数据。 1,添加视图函数 Test/app11/views.py from django.shortcuts import render from .models import Postdef index(re…

身边的故事(十四):阿文的故事:再买房

短短的一年多时间里,阿文仿佛从人生低谷完全走出来了。各种眼花缭乱的操作和处理事情方式让人觉得不可思议,是不是一个人大手大脚花钱惯了,让他重新回到艰苦朴素的日子是不是比死都难受呢?又或者像我这种靠勤勤恳恳的打工人是无法…

SpringMVC常见的注解

一、Spring MVC Spring Web MVC是基于ServletAPI构建的原始web 框架,一开始就包含在Spring 框架中,通常被称为“Spring MVC”。 1.MVC 是什么? MVC(Model、View、Controller)是软件工程中的一种软件架构设计模型。它把软件系统分…

基于深度学习LightWeight的人体姿态之行为识别系统源码

一. LightWeight概述 light weight openpose是openpose的简化版本,使用了openpose的大体流程。 Light weight openpose和openpose的区别是: a 前者使用的是Mobilenet V1(到conv5_5),后者使用的是Vgg19(前10…

Flink SQL kafka连接器

版本说明 Flink和kafka的版本号有一定的匹配关系,操作成功的版本: Flink1.17.1kafka_2.12-3.3.1 添加kafka连接器依赖 将flink-sql-connector-kafka-1.17.1.jar上传到flink的lib目录下 下载flink-sql-connector-kafka连接器jar包 https://mvnreposi…

python实现接口自动化

代码实现自动化相关理论 代码编写脚本和工具实现脚本区别是啥? 代码: 优点:代码灵活方便缺点:学习成本高 工具: 优点:易上手缺点:灵活度低,有局限性。 总结: 功能脚本:工…

找不到x3daudio1_7.dll怎么修复?一招搞定x3daudio1_7.dll丢失问题

当你的电脑突然弹出提示,“找不到x3daudio1_7.dll”,这时候你就需要警惕了。这往往意味着你的电脑中的程序出现了问题,你可能会发现自己无法打开程序,或者即便打开了程序也无法正常使用。因此,接下来我们要一起学习一下…

07浅谈大语言模型可调节参数tempreture

浅谈temperature 什么是temperature? temperature是大预言模型生成文本时常用的两个重要参数。它的作用体现在控制模型输出的确定性和多样性: 控制确定性: temperature参数可以控制模型生成文本的确定性,大部分模型中temperatur…

1、Java入门(cmd使用)+ jdk的配置

文章目录 前言一、常见的CMD命令1 盘符+冒号:D:---- 切换到D盘根目录下(注意要英文冒号才行)2 查看目录下内容dir --- 查看当前目录下的所有内容(包括文件夹、各种文件、exe程序、隐藏文件等所有都会查看到)dir 目录名(或路径)3 cd 目录(或者路径)--- 进入到指定目录…

探索人工智能在电子商务平台与游戏发行商竞争中几种应用方式

过去 12 年来,电脑和视频游戏的发行策略发生了巨大变化。数字游戏的销量首次超过实体游戏的销量 在20132020 年的封锁进一步加速了这一趋势。例如,在意大利,封锁的第一周导致数字游戏下载量 暴涨174.9%. 展望未来,市场有望继续增…

【若依前后端分离】通过输入用户编号自动带出部门名称(部门树)

一、部门树 使用 <treeselect v-model"form.deptId" :options"deptOptions" :show-count"true" placeholder"请选择归属部门"/> <el-col :span"12"><el-form-item label"归属部门" prop"dept…

QT5.14.2与Mysql8.0.16配置笔记

1、前言 我的QT版本为 qt-opensource-windows-x86-5.14.2。这是QT官方能提供的自带安装包的最近版本&#xff0c;更新的版本需要自己编译源代码&#xff0c;可点击此链接进行下载&#xff1a;Index of /archive/qt/5.14/5.14.2&#xff0c;选择下载 qt-opensource-windows-x86…

【机器学习】基于线性回归的医疗费用预测模型

文章目录 一、线性回归定义和工作原理假设表示 二、导入库和数据集矩阵表示可视化 三、成本函数向量的内积 四、正态方程五、探索性数据分析描述性统计检查缺失值数据分布图相关性热图保险费用分布保险费用与性别和吸烟情况的关系保险费用与子女数量的关系保险费用与地区和性别…

Halcon 铣刀刀口破损缺陷检测

一 OTSU OTSU&#xff0c;是一种自适应阈值确定的方法,又叫大津法&#xff0c;简称OTSU&#xff0c;是一种基于全局的二值化算法,它是根据图像的灰度特性,将图像分为前景和背景两个部分。当取最佳阈值时&#xff0c;两部分之间的差别应该是最大的&#xff0c;在OTSU算法中所采…

张量分解(2)——张量运算(内积、外积、直积、范数)

&#x1f345; 写在前面 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;这里是hyk写算法了吗&#xff0c;一枚致力于学习算法和人工智能领域的小菜鸟。 &#x1f50e;个人主页&#xff1a;主页链接&#xff08;欢迎各位大佬光临指导&#xff09; ⭐️近…

Stream流真的很好,但答应我别用toMap()

你可能会想&#xff0c;toList 和 toSet 都这么便捷顺手了&#xff0c;当又怎么能少得了 toMap() 呢。 答应我&#xff0c;一定打消你的这个想法&#xff0c;否则这将成为你噩梦的开端。 让我们先准备一个用户实体类。 Data AllArgsConstructor public class User { priv…

【C#】函数方法、属性分文件编写

1.思想 分文件编写是面向对象编程的重要思想&#xff0c;没有实际项目作为支撑很难理解该思想的精髓&#xff0c;换言之&#xff0c;一两个函数代码量因为太少无法体现分文件编写减少大量重复代码的优势。 2.项目结构介绍 整项目的名称叫AutoMetadata&#xff0c;是一个基于W…

【第三版 系统集成项目管理工程师】第4章 信息系统架构

持续更新。。。。。。。。。。。。。。。 【第三版】系统集成项目管理工程师 考情分析4.1架构基础4.1.1指导思想&#xff08;非重点&#xff09; P1364.1.2设计原则&#xff08;非重点&#xff09; P1364.1.3建设目标&#xff08;非重点&#xff09; P1374.1.4总体框架 P138练习…

【web前端HTML+CSS+JS】--- CSS学习笔记02

一、CSS&#xff08;层叠样式表&#xff09;介绍 1.优势 2.定义解释 如果有多个选择器共同作用的话&#xff0c;只有优先级最高那层样式决定最终的效果 二、无语义化标签 div和span&#xff1a;只起到描述的作用&#xff0c;不带任何样式 三、标签选择器 1.标签/元素选择器…