Git详细安装和使用教程

news2024/12/23 9:19:12

文章目录

    • 准备工作-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.coloradmin.cn/o/1891667.html

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

相关文章

Paimon 在汽车之家的业务实践

汽车之家基于Paimon的实践 摘要:本文分享自汽车之家的王刚、范文、李乾⽼师。介绍了汽车之家基于 Paimon 的一些实践,和一些背景。内容主要为以下四部分: 一、背景 二、业务实践 三、paimon 优化实践 四、未来规划 一、背景 在使用Paimon之前…

独立开发者系列(18)——js的window对象

独立开发者&#xff0c;必然要面对JS代码&#xff0c;基本可以认为在脚本语言里面&#xff0c;JS门槛最低&#xff0c;正因为如此&#xff0c;JS也是最受欢迎的开发语言之一。JS的代码运行规律&#xff0c;按照代码模块执行&#xff0c;也就是<script></script> 每…

node版本控制工具nvm,让你不用再重装node来更新版本。

引言 由于项目的nodejs版本不一致&#xff0c;导致需要卸载安装换版本&#xff0c;十分麻烦&#xff0c;使用nvm node版本控制器来快速切换node版本 下载安装 先把你原来的node安装目录删掉 github下载nvm-setup.zip。傻瓜式安装 Releases coreybutler/nvm-windows (gith…

宝塔Linux面板配置环境 + 创建站点

一、安装 &#xff08;1&#xff09;进入宝塔官网 https://www.bt.cn/new/index.html &#xff08;2&#xff09;点击“ 立即免费安装 ”&#xff0c;选择 Centos安装脚本 &#xff08;3&#xff09;进入 ssh 输入以下命令安装宝塔 yum install -y wget && wget -O …

【论文解读】CVPR2024:DUSt3R: Geometric 3D Vision Made Easy

论文“”https://openaccess.thecvf.com/content/CVPR2024/papers/Wang_DUSt3R_Geometric_3D_Vision_Made_Easy_CVPR_2024_paper.pdf 代码&#xff1a;GitHub - naver/dust3r: DUSt3R: Geometric 3D Vision Made Easy DUSt3R是一种旨在简化几何3D视觉任务的新框架。作者着重于…

错误 [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试 python ping

报错提示&#xff1a;错误 [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试 用python做了一个批量ping脚本&#xff0c;在windows专业版上没问题&#xff0c;但是到了windows服务器就出现这个报错 解决方法&#xff1a;右键 管理员身份运行 这个脚本 …

电子工程与网络技术解析

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;日常聊聊 ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 正文 1、MUX&PD是什么意思 2、Hub 和HUB有什么区别 3、Redriver什么意思 4、Switch是什么意思 5、USB 2.0 ETHERNET2什么意思 6、…

Ubuntu18.04新安装--无网络连接、重启黑屏解决教程

一、安装Ubuntu Ubuntu安装需要U盘作为启动盘&#xff0c;在目前教新的电脑中选中GPT作为分区&#xff0c;制作启动盘&#xff0c;其中在安装双系统Ubuntu时&#xff0c;以自定义格式作为存储空间。详细安装过程以以及如何分区请参考下列链接&#xff1a;内含详细安装过程&…

教育场景中的自动化分拣系统!基于大象机器人UltraArm P340机械臂和传送带的实现

引言 今天我们将展示一个高度自动化的模拟场景&#xff0c;展示多个机械臂与传送带协同工作的高效分拣系统。在这个场景中&#xff0c;机械臂通过视觉识别技术对物体进行分类&#xff0c;并通过精确的机械操作将它们放置在指定的位置。这一系统不仅提高了分拣的速度和准确性&am…

Vue el-table列合并

1.封装公用方法 const dataMethod (data, isH []) > {let spanObj {}; // 存储每个key 对应的合并值let pos {}; // 存储的是 key合并值得索引// 循环数据for (let i 0; i < data.length; i) {let dataI data[i];// 循环数据内对象&#xff0c;查看有多少keyfor (…

使用U盘重装系统

目录 一、 制作启动盘 1. 准备一个U盘和一台电脑 2. 下载win10安装包 二、安装操作系统 1. 插入系统安装盘 2. 通过进入BIOS界面进入到我们自己制作的启动盘上 三、安装成功后进行常规设置 一、 制作启动盘 1. 准备一个U盘和一台电脑 注意&#xff1a;提前备份好U盘内的…

九浅一深Jemalloc5.3.0 -- ⑧浅*free

目前市面上有不少分析Jemalloc老版本的博文&#xff0c;但最新版本5.3.0却少之又少。而且5.3.0的架构与5之前的版本有较大不同&#xff0c;本着“与时俱进”、“由浅入深”的宗旨&#xff0c;我将逐步分析最新release版本Jemalloc5.3.0的实现。 另外&#xff0c;单讲实现代码是…

PyTorch环境配置及安装

PyTorch环境配置及安装 Step1&#xff1a;安装Anaconda 参考该链接&#xff08;视频01:30--03:00为安装教程&#xff09;&#xff1a; 【PyTorch深度学习快速入门教程&#xff08;绝对通俗易懂&#xff01;&#xff09;【小土堆】】 https://www.bilibili.com/video/BV1hE41…

04通俗理解自注意力机制(self-attention)

04浅谈自注意力机制&#xff08;self-attention&#xff09; 1. 基本概念 注意力机制 是Transformer模型的核心。它的作用是让模型能够“关注”输入数据的不同部分&#xff0c;而不是一次只处理一个词。比如&#xff0c;当模型在处理一句话时&#xff0c;它可以同时考虑句子中…

AntV学习笔记

文章目录 G6 图可视化引擎简单上手复杂一点的案例 S2 多维交叉分析表格简单的一个vue3使用S2的例子 G6 图可视化引擎 G6 是一个简单、易用、完备的图可视化引擎&#xff0c;它在高定制能力的基础上&#xff0c;提供了一系列设计优雅、便于使用的图可视化解决方案。能帮助开发者…

【数据集】最近开源的一些多模态图表理解数据集

1. CharXiv 现有数据集通常关注过于简化和同质化的图表&#xff0c;并且问题往往基于模板生成&#xff0c;这导致了对MLLMs图表理解能力的过度乐观评估。为了解决这个问题&#xff0c;作者提出了一个新的评估套件CharXiv&#xff0c;它包含了从arXiv论文中精选的2323个自然、具…

昇思25天学习打卡营第10天|linchenfengxue

基于MobileNetv2的垃圾分类 通过读取本地图像数据作为输入&#xff0c;对图像中的垃圾物体进行检测&#xff0c;并且将检测结果图片保存到文件中。 MobileNetv2模型原理介绍 MobileNet网络是由Google团队于2017年提出的专注于移动端、嵌入式或IoT设备的轻量级CNN网络&#x…

【产品运营】Saas的核心六大数据

国内头部软件公司的一季度表现惨不忍睹&#xff0c;为啥美国的还那么赚钱呢&#xff1f;其实核心是&#xff0c;没几个Saas产品经理是看数据的&#xff0c;也不知道看啥数据。 SaaS 行业&#xff0c;天天抛头露面、名头叫的响的 SaaS 产品&#xff0c;真没有几个赚钱的。 那为…

# mysql 中文乱码问题分析

mysql 中文乱码问题分析 一、问题分析&#xff1a; MySQL 中文乱码通常是因为字符集设置不正确导致的。MySQL 有多种字符集&#xff0c;如 latin1、utf8、utf8mb4 等&#xff0c;如果在创建数据库、数据表或者字段时没有指定正确的字符集&#xff0c;或者在插入数据时使用了与…

Excel中按列的首行字母顺序,重新排列(VBA脚本)

排序前 要求对4列数据按照第一行abcd的顺序排列 VB脚本如下&#xff1a; 要使用这个脚本&#xff0c;请按照以下步骤操作&#xff1a; 打开Excel&#xff0c;然后按下 Alt F11 打开VBA编辑器。在VBA编辑器中&#xff0c;选择“插入” > “模块”&#xff0c;在打开的模块…