阶段七-GitEE

Git:版本控制软件

Git的优点

1.1 协同修改
  • 多人并行不悖的修改服务器端的同一个文件。

1.2 数据备份
  • 不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态。

1.3 版本管理
  • 在保存每一个版本的文件信息的时候要做到不保存重复数据,以节约存储空间,提高运行效率。这方面 SVN 采用的是增量式管理的方式,而 Git 采取了文件系统快照的方式。

1.4 权限控制
  • 对团队中参与开发的人员进行权限控制。

  • 对团队外开发者贡献的代码进行审核——Git 独有。

1.5 历史记录
  • 查看修改人、修改时间、修改内容、日志信息。

  • 将本地文件恢复到某一个历史状态。

  • 分支管理。

  • 许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

2. Git官网

  • 官网地址: Git

3. Git工作流程

代码工作区 ---> 执行git add ---> 暂存区(临时存储)---> 执行git commit ---> 本地库(历史版本)

工作区、暂存区和本地仓库,逻辑上是本地计算机。

  1. 当我们新建一个文件时,文件位于工作区,处于已修改(modified)状态,表明文件已进行了修改,但还没有提交保存;

  2. 通过命令 git add 将其添加到暂存区,文件是已暂存(staged)状态,表示把已修改的文件放到下次提交时要保存的清单中;

  3. 通过命令 git commit将文件放入本地仓库,文件为已提交(commited)状态,表示该文件已经被安全地保存在本地数据库中,到这一步可以说是成功生成了一个新的版本;

  4. 远程仓库用来将本地仓库上传到网络,实现备份、共享和合作。

三、Git的安装

1. 安装步骤

  1. 选择安装目录,全部下一步即可。

2. 验证是否安装成功

  1. 安装完打开Git Bash窗口 。

  2. 输入git --version 输出版本信息证明安装成功 。

四、Git基础指令

基础指令 (工作区, 暂存区 , 本地仓库)

1.git init : 初始化本地仓库

2.git add:文件名 | git add : 将工作区的修改添加到暂存区

3.git commit -m '描述' : 将暂存区的内容提交到本地仓库中

4.git diff 文件名: 查看工作区文件和本地仓库(版本库)的区别

5.git log  : 查看详细日志

   git log --pretty=oneline : 展示一行日志

   git reflog : 简化日志

6.git reset --hard 局部版本号(完整版本号也行) : 恢复版本

7.git rm 文件名 : 删除文件,将删除的文件添加到暂存区

五、常见的远程仓库

1. Github

Github是目前全球最大的代码托管平台。也是Git官方指定的远程仓库。里面包含了全球很多开源项目。

但是由于Github是国外的服务器,所以在国内(尤其网络不是很好的地方)在进行推送内容或拉取内容时的速度可能不是特别快。

2. Gitee

Gitee 中文名称码云。

是国内目前最大的代码托管平台。号称中国版Github。是由开源中国推出的。

近几年在选择远程仓库时Gitee常作为国内开发者首选。

六、远程仓库操作(以码云为例)

1. 在码云注册账号

2. 创建远程仓库

2.1 注册

首先需要注册一直自己的账号。注册后完成登录。

2.2 创建仓库

点击右上角“+” -》 新建仓库 -》创建一个新的仓库。

2.3 填写仓库信息。
  • 仓库名称是必填项。

  • 是否开源选择开源。

  • 取消勾选“使用Readme文件初始化这个仓库”。

3. 推送到远程

远程仓库的操作:

1.创建远程仓库

        1.添加远程仓库地址

如果没有添加会报错

               git remote add orgin 地址

                1.使用仓库的https协议

                        1.将本地仓库中的内容推送到远程库中,需要输入远程仓库的用户名,密码

                        2.出现账号和密码输入错误,再使用时,还会使用错误的账号和密码

                                控制面板 -> 在搜索框搜索凭据 -> 凭据管理器 -> gitee相关 -> 删除记录

                2.使用仓库的SSH协议

                        1.将本地库中的内容推送到远程库时,不需要输入用户名和密码

                         2.生成公钥和私钥,将公钥配置在远程仓库中。官方文档有

         2.推送到远程仓库的主分支中:

                git bush -u origin master

                -u 本地分支和远程分支建立关联,建立关联联系后可以使用git push

                查看本地分支和远程分支是否存在关联关系

                git branch -vv

                

4. 克隆远程仓库到本地

克隆远程仓库的项目:

  git clone https://地址 对于公开仓库允许被克隆,直接克隆

  git clone ssh地址 gitee必须配置了本地git的公钥

七、分支操作

1. 分支概念

在版本控制过程中,多个分支可以同时推进,提高开发效率,各个分支互不影响,增加了容错性。

在版本控制过程中,使用多条线同时推进多个任务。每条线成为一个分支。

开发中常见的分支:

1.1 Master

主分支;主要是稳定的版本分支,正式发布的版本都从Master拉。

1.2 Develop

开发分支;更新和变动最频繁的分支,正常情况下开发都是在Develop分支上进行的。

1.3 Release

预发行分支;一般来说,代表一个版本的功能全部开发完成后递交测试,测试出Bug后进行修复的分支。

1.4 Features

功能分支; 其实Features不是一个分支,而是一个分支文件夹。里面包含了每个程序员开发的功能点。Feature开发完成后合入Develop分支。

1.5 HotFix

最希望不会被创建的分支;这个分支的存在是在已经正式上线的版本中,发现了重大Bug进行修复的分支。

2. 分支指令

默认只会创建主分支,可以创建其他分支.

创建了其他的分支,可以实现同时推进,互不影响

1.查看分支: git branch

2.创建分支: git branch 分支名

3.切换分支: git checkout 分支名

4.将本地分支推送到远程: git push origin 本地分支名:远程分支名

5.合并分支: 切换到主分支,合并其他分支. git merge --no-f 分支名

6.删除本地分支: git branch -d 分支名

7.删除远程分支: git push orgin --delete 远程分支名

未完待续

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言--直接插入排序【排序算法|图文详解】

一.直接插入排序介绍🍗 直接插入排序又叫简单插入排序,是一种简单直观的排序算法,它通过构建有序序列,对于未排序的数据,在已排序序列中从后向前扫描,找到相应位置并插入。 算法描述: 假设要排序…

Linux:线程优先级设置

目录 一、背景二、调整普通线程的优先级通过系统命令通过Linux C代码 三、调整实时线程的优先级通过系统命令通过Linux C代码 四、参考资料(建议一定要阅读) 在操作系统中,线程优先级决定了线程在 CPU 调度时的重要性。较高优先级的线程会在竞…

docker-compose部署kafka

docker-compose.yml配置 version: "3" services:kafka:image: bitnami/kafka:latestports:- 7050:7050environment:- KAFKA_ENABLE_KRAFTyes- KAFKA_CFG_PROCESS_ROLESbroker,controller- KAFKA_CFG_CONTROLLER_LISTENER_NAMESCONTROLLER- KAFKA_CFG_LISTENERSPLAIN…

usb设备驱动程序(一)

代码&#xff1a; #include <linux/atomic.h> #include <linux/kernel.h> #include <linux/list.h> #include <linux/module.h> #include <linux/slab.h> #include <linux/usb.h> #include <linux/videodev2.h> #include <linux…

巅峰画师Midjourney:新时代的独角兽

介绍 AI绘画领域中&#xff0c;Midjourney处于绝对地位&#xff0c;并且一年时间就登顶。 Midjourney是一家独立的AI研究实验室,探索新的思维媒介,拓展人类的想象力。 它由一个小型的自筹资金团队组成,专注于设计、人类基础设施和AI。 在AI绘画领域,Midjourney取得了非常突出…

2023年国赛高教杯数学建模E题黄河水沙监测数据分析解题全过程文档及程序

2023年国赛高教杯数学建模 E题 黄河水沙监测数据分析 原题再现 黄河是中华民族的母亲河。研究黄河水沙通量的变化规律对沿黄流域的环境治理、气候变化和人民生活的影响&#xff0c;以及对优化黄河流域水资源分配、协调人地关系、调水调沙、防洪减灾等方面都具有重要的理论指导…

PyTorch深度学习实战(27)——变分自编码器(Variational Autoencoder, VAE)

PyTorch深度学习实战&#xff08;27&#xff09;——变分自编码器 0. 前言1. 变分自编码器1.1 自编码器的局限性1.2 VAE 工作原理1.3 VAE 构建策略1.4 KL 散度1.5 重参数化技巧 2. 构建 VAE小结系列链接 0. 前言 变分自编码器 (Variational Autoencoder, VAE) 是一种生成模型&…

测试C#使用AForge从摄像头获取图片

百度“C# 摄像头”关键词&#xff0c;从搜索结果来看&#xff0c;使用OpenCV、AForge、window动态链接库获取摄像头数据的居多&#xff0c;本文学习基于Aforge.net连接摄像头并从摄像头获取图片的基本方法。   AForge相关包&#xff08;尤其是相关的控件&#xff09;主要针对…

【Mathematical Model】Python拟合一元一/二次方程(线性回归)

Python中可以使用多种库进行拟合方程&#xff0c;其中最常用的是NumPy和SciPy。NumPy是一个用于处理数组和矩阵的库&#xff0c;而SciPy则提供了大量的科学计算函数&#xff0c;包括拟合算法。 1 一元一次方程拟合 需要注意的是我们这里的方程需要我们自己定义好&#xff0c;然…

OpenCV-Python(9):图像基础操作

目录 学习目标 获取图像像素并修改像素值 获取图像属性 图像ROI 拆分及合并图像通道 图像边缘扩充 学习目标 获取像素值并修改获取图像的属性(信息)图像的ROI获取图像通道拆分及合并图像扩边 获取图像像素并修改像素值 几乎所有这些操作与Numpy 的关系要比与OpenCV 的…

Unity Shader Early-Z技术

Unity Shader Early-Z技术 Early-Z技术Unity渲染顺序总结Alpha Test&#xff08;Discard&#xff09;在移动平台消耗较大的原因 Early-Z技术 传统的渲染管线中&#xff0c;ZTest其实是在Blending阶段&#xff0c;这时候进行深度测试&#xff0c;所有对象的像素着色器都会计算一…

电力系统风储联合一次调频MATLAB仿真模型

微❤关注“电气仔推送”获得资料&#xff08;专享优惠&#xff09; 简介&#xff1a; 同一电力系统在不同风电渗透率下遭受同一负荷扰动时&#xff0c;其频率变化规律所示&#xff1a; &#xff08;1&#xff09;随着电力系统中风电渗透率的不断提高&#xff0c;风电零惯性响…