版本控制系统Git - 配置与基本使用

news2024/11/17 15:34:17

Git

  • 1 Git简介
    • 1 Git概述
    • 2 Git的作用
      • 2.1 项目版本管理
      • 2.2 多人协同开发
      • 2.3 Git 的结构
      • 2.4 Git的工作原理
  • 2 Git安装
    • 1 下载Git
    • 2 安装Git
    • 3 配置环境变量
    • 4 测试git是否安装成功
    • 5 安装git桌面工具(可以不安装)
  • 3 Git基本操作
    • 1 设置Git用户
    • 2 新建仓库
    • 3 查看仓库状态
    • 4 添加到暂存文件
    • 5 提交文件
    • 6 查看日志
    • 7 切换版本
  • 4 远程Git的服务器
    • 1 使用Gitee远程服务器
      • 1.1 创建Gitee账号
      • 1.2 创建仓库
    • 2 远程仓库命令
      • 2.1 连接远程仓库
      • 2.2 提交内容到远程仓库
      • 2.3 从远程仓库**克隆**代码
      • 2.4 从远程仓库拉取代码
      • 2.5 总结
  • 5 在IDEA上配置Git

1 Git简介

1 Git概述

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

Git 与常用的版本控制工具 CVS, SVN等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

2 Git的作用

  1. 项目版本控制
  2. 多人协同开发

2.1 项目版本管理

使用git保存项目每一个开发过程中的版本

2.2 多人协同开发

使用git实现多人协同开发

Git的作用
在这里插入图片描述

2.3 Git 的结构

  • **工作区:**就是你在电脑里能看到的目录。
  • **暂存区:**英文叫stage, 或index。一般存放在 “.git目录下” 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
  • **版本库:**工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

2.4 Git的工作原理

Git工作流程
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aJOItz1F-1683373206472)(image\git.jpg)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Nrq7MZFU-1683373206473)(image\image-20210722150109550.png)]

  1. 使用git的init命令初始化一个工作区

  2. 使用add命令将工作区中的代码提交到暂存区

  3. 使用checkout命令将本地库中的代码检出到工作区

    基于别人的项目代码继续开发—先通过远程仓库地址通过克隆命令把服务器上的代码克隆到本地仓库,再从本地仓库通过check命令把本地仓库代码检出到工作区

  4. pull(fetch+merge)将远程仓库的代码拉取到工作区

2 Git安装

1 下载Git

  • 官网地址:https://git-scm.com/downloads
  • 第三方镜像地址(下载更快):https://npm.taobao.org/mirrors/git-for-windows/

2 安装Git

直接点击安装即可(一路下一步即可)

3 配置环境变量

当前版本可以自动配置环境变量

4 测试git是否安装成功

git --version

5 安装git桌面工具(可以不安装)

  • 安装小乌龟工具(Git的可视化工具) TortoiseGit-2.4.0.2-64bit.msi

3 Git基本操作

1 设置Git用户

自报家门

git config --global user.email “you@example.com”
git config --global user.name “Your Name”

查看信息

git config -l

git config --global user.email ‘yinying293@163.com’

git config --global user.name ‘yinying’

查看信息 git config -l

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Zt7HmXN1-1683373206474)(img/image-20230424225808156.png)]

2 新建仓库

选择一个目录,执行指令:git init

git init 

3 查看仓库状态

执行 git status 可以看到工作区中文件的状态

git status

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i2FPoufl-1683373206474)(img/image-20230424230114070.png)]

4 添加到暂存文件

执行 git add . 将工作区中的文件全部存入暂存区

. 表示当前目录

git add .

5 提交文件

执行 git commit -m “这里写提交的描述信息” 作用是将暂存区的文件存入分支,形成一个版本

git commit -m '提交信息'  

6 查看日志

git log 查看提交日志

git log --oneline (查看简洁基本信息)

git log --all (查看所有的版本)

git log
git log --oneline
git log --all

7 切换版本

执行 git checkout 版本名称 (切换到指定的版本)

git checkout 2a52a05

以上几个命令实操

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WPuzSJo8-1683373206475)(img/image-20230424231042094.png)]

4 远程Git的服务器

  • 国内git服务器:https://gitee.com/ 码云
  • 国外git服务器:https://github.com/
  • 私有Git服务器Gitlab:基于github在公司内部搭建Git服务器

1 使用Gitee远程服务器

1.1 创建Gitee账号

  • https://gitee.com/ 注册账号

1.2 创建仓库

仓库名称与路径必填 一般自己的项目设置为私有(即仅自己可见,并且可以邀请他人协同开发)

2 远程仓库命令

2.1 连接远程仓库

git remote add origin 远程仓库的地址

origin 给远程仓库地址取名字

git remote -v 查看远程仓库的地址

2.2 提交内容到远程仓库

git push origin master

注意:弹窗请输入gitee的账号密码

2.3 从远程仓库克隆代码

如果是第一次从远程仓库下载代码需要从远程仓库克隆代码到本地master分支

git clone 远程仓库地址 -b master

克隆只做一次

2.4 从远程仓库拉取代码

git pull origin master

2.5 总结

多人协同开发时,写好代码的git push 上传到远程仓库;需要代码的 git pull 拉取代码即可。

步骤:

  • 有人再次将本地
    仓库内容,上传到了远程仓库
  • 此时另一方如果想获得更新,则需要做一次拉取 git pull

在这里插入图片描述

输入码云账户密码

  [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0fZwhosQ-1683373233302)(img/image-20230424235842445.png)]

5 在IDEA上配置Git

  1. 在IDEA中关联Git(设置搜索git – 新版本的IDEA会自动检测到安装的git程序)

  2. 在IDEA中操作Git

    1. 在菜单顶栏中选择版本控制工具 VCS—>Create Git Repository

      或者命令行操作 terminal — git init

    2. 安装忽略提交文件插件 .ignore

    3. 项目 new – . ignore File – gitignore File (Git) 语言搜索选择java – creat

      1. 在 .gitignore添加忽略文件target *.iml .idea .mvm\wrapper mvnw.cmd mvnw
  3. 项目提交到远程仓库(第一次)

    1. 右击工程 --git – add (将工程添加到暂存区)—这一步可以忽略

    2. 右击工程 --git – commit directory (提交到本地库) 勾选提交内容 描述提交信息

      可以选择commit 改为commit and push

    3. 右击工程 --git – push 添加远程库地址

  4. 后续

    1. 局部修改到本地git – pull 拉取远程代码
    2. 克隆工程到本地 git – clone url填写地址即可
  5. 如果出问题,要在设置 -- version control 移除掉之前有问题的项目

  6. 分支管理

    1. 创建分支

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

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

相关文章

MATLAB 点云重复点去除(7)

MATLAB 点云重复点去除 (7) 一、实现效果二、算法介绍三、函数说明3.1 函数3.2 参数四、具体代码 (注释详细!)一、实现效果 效果上看不出来,但实际上左边的点云是右边的两倍 二、算法介绍 重复点的去除,是点云处理中常用的预处理方法,因为重复点的存在有时候会严重干…

C++系列四:数组

数组 1. 数组定义与初始化2. 多维数组3. 字符数组4. 总结 1. 数组定义与初始化 定义数组时需要指定数组的类型和大小: int myArray[10];上述代码定义了一个包含 10 个整数的数组。这些整数的下标从 0 开始,并以 1 个单位递增。 C 允许在定义数组时对其…

设计模式——装饰者模式(继承和接口的两种实现方式)

是什么? 场景案例:想必大家都吃过手抓饼吧,我们在点手抓饼的时候可以选择加培根、鸡蛋、火腿、肉松等等这些配菜,当然这些配菜的价格都不一样,那么计算总价就比较麻烦; 装饰者模式就是指在不改变现有对象…

springboot 集成 shardingSphere 加mybatisplus 自带增加 分页查询 和源代码包 分库分表 单库 分表 使用雪花算法id

目录 介绍 代码下载 效果 数据库 代码结构 上代码 pom.xml yml配置 建表语句 mapper.xml mybatisplus 配置.java logback application.java BaseEntity TUser TUserMapper TUserService TUserServiceImpl TUserController 测试 介绍 这套springboot shardi…

OSG笔记:AutoTransform实现固定像素大小的图形

需求 在(200,0,0)位置绘制固定10像素大小的正方体 实现方式 为了便于观察,例子中绘制了两条直线,相交于(200,0,0)。 //两根直线交于(200, 0, 0),用于辅助观察 {osg::Geometry* pLineGeom new osg::Geometry();osg::Vec3Array* pVertexArra…

python语法复习

print:输出函数 print(520)效果:输出520. print(hello)效果:输出hello. print(1020)【效果:输出了:1020】注:“ ”在print里面是一个连接符。 print(1020)【效果:输出了30】注: 在此处…

OJ 系统常用功能介绍 快速入门 C++ Python JAVA语言在线评测

技术支持微 makytony 服务器配置 腾讯云 2H4G 5M 60GB 轻量应用服务器 承载大约 200~400人使用,经过压力测试,评测并发速度可满足130人左右的在线比赛。 系统镜像选 Ubuntu 22.04 LTS ,Ubuntu是最热门的Linux发行版之一,是一款…

洞车系统常见问题解决指南

洞车常见问题解决指南 1.研发脚本处理问题1.1 WMS出库单无法审核1.2 OMS入库单无法提交,提示更新中心库存失败1.3 当出现OMS下发成功WMS/TMS/DMS还没有任务的情况时处理方案1.4 调度波次生成或者添加任务系统异常1.5 东鹏出库单部分出库回传之后要求重传1.6 更新订单…

spring、springmvc、springboot、mybatis框架高频面试题

一、spring 1、Spring框架中的单例bean是线程安全的吗? 不是线程安全的,是这样的: 当多用户同时请求一个服务时,容器会给每一个请求分配一个线程,这是多个线程会并发执行该请求对应的业务逻辑(成员方法&a…

ES索引结构升级-笔记

ES中索引的字段类型是不可修改的,只能是重新创建一个索引并设置好mapping,然后再将老索引的数据复制过去 查看老索引mapping GET /twitter/_mappings创建new索引,并指定mapping PUT /twitter410{"mappings": {"properties&…

金3银四结束了,回顾一下我2个月面试的公司....

金三银四结束了,还没有 offer 的同学不要气馁,该来的迟早会来。楼主从 年底 月有想法跳槽开始准备春招,一开始也是惨不忍睹,后来慢慢进入状态最近的面试基本都能走到终面,所以好好坚持,最后一定会有好结果的…

操作系统考试复习——第四章 存储器管理 4.1 4.2

存储器的层次结构: 存储器的多层结构: 存储器至少分为三级:CPU寄存器,主存和辅存。 但是一般分为6层为寄存器,高速缓存,主存储器,磁盘缓存,固定磁盘,可移动存储介质。…

无需重复造轮子—借助 Jetpack 组件,加速应用程序开发

简介 Android Jetpack 是谷歌官方推出的一套 Android 应用架构组件库,旨在为 Android 应用开发提供一种更优秀、更高效且更简单的方式。 Android Jetpack 对开发者带来了许多好处,以下是其中的一些: 提高开发效率:Jetpack 提供…

vue项目重复点击一个路由会报错如何解决

在新版本的vue-router中,重复点击同一个路由会出现以下报错 : 这个问题时vue-router 3.2.0版本的一个小Bug 方法有很多,比如降低路由版本(不推荐),但是推荐下面这种方式,比较简单靠谱 // 把这段代码直接粘贴到router/index.js中的Vue.use(VueRouter)之…

django:django2配置websocket

源码地址: https://gitee.com/liuhaizhang/django2-configuring-websockethttps://gitee.com/liuhaizhang/django2-configuring-websocket python3.9.0 django2.2.1 channels2.2.0 项目结构: test_websocket_django2 -chat -home -test_websocket_dja…

深度学习笔记之卷积神经网络(一)卷积函数与图像卷积操作

深度学习笔记之卷积神经网络——卷积函数 引言什么是卷积图像卷积操作 引言 从本节开始,将介绍卷积神经网络。本节将介绍卷积函数。 什么是卷积 卷积,是一种通过两个函数 f ( ⋅ ) 和 f(\cdot)和 f(⋅)和 g ( ⋅ ) g(\cdot) g(⋅)生成第三个函数 h ( …

备战花了2个月,春招3轮顺利拿下字节offer

PART1:个人情况简介 菜 J 一枚,本硕都是计算机(普通二本),2021 届应届硕士,软件测试方向。个人也比较喜欢看书,技术书之类的都有看,最后下面也会推荐一些经典书籍。 先说一下春招结…

Docker--harbor私有仓库管理与部署

目录 一、本地私有仓库 搭建本地私有仓库 Docker容器的重启策略 二、Harbor 1、什么是Harbor 2、Harbor特性 3、Harbor的构成 三、Harbor部署 实验步骤 1、安装Docker-Compose服务 2、部署Harbor服务 1、下载或上传Harbor安装程序 2、修改Harbor安装的配置文件 3、…

day26_mysql

今日内容 零、 复习昨日 一、MySQL 一、引言 1.1 现有的数据存储方式有哪些? Java程序存储数据(变量、对象、数组、集合),数据保存在内存中,属于瞬时状态存储。 文件(File)存储数据&#xff0c…

多款智能骑行终端齐登场,移远通信闪亮第31届中国国际自行车展览会

近年来,自行车、电动车市场火爆,随着数字化、智能化的持续深入,更具科技感的骑行工具受到了越来越多年轻一代的青睐。5月5-8日,以" 更安全、更智能、更低碳 " 为主题的第 31 届中国国际自行车展览会在上海新国际博览中心…