学习git

文章目录

  • 02-为什么要学习Git软件?
  • 03 概念:版本控制
  • 04 概念:版本控制软件基础功能
  • 05 概念:集中式、分布式版本控制系统、多人协作开发
    • 5.1 文件冲突问题
    • 5.2集中式版本控制(CVS,SVN)
    • 5.3 分布式版本控制
  • 操作
    • 克隆
    • 创建仓库
  • 011 GitHub Desktop分支原理
  • 分支操作
    • 如何解决文件冲突问题?
    • 添加标签
    • 远程仓库-GitHub
    • 创建文件
    • 修改文件
    • 创建新分支
    • 删除库
    • 从GitHub中下载资源库
    • 另一个远程仓库:gitee
    • README、IGNORE

视频所在地址:
尚硅谷新版Git快速入门(3h迅速掌握git):网站

一个练习 Git 的网站:网站

02-为什么要学习Git软件?

资源管理:人力、代码(.html/.css/.js/.py/.c/.java)、文档资源(.doc/.pdf/.pptx/)

SCM:Software Configuration Management
软件配置管理是指通过执行版本控制、变更控制的规程,以及使用合适的配置管理软件,来保证多有的配置项的完整性和可追踪性。配置管理是对工作成果的一种有效保护。

VSS:集中式版本控制系统(每次只能一个人开发)
CVS:支持多人协作,也是集中式版本控制系统
SVN:Subversion,开放原地阿妈的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发一个项目,实现共享资源,实现最终集中式的管理。
Git:是开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放原代码的版本控制软件。

03 概念:版本控制

版本指的是软件版本、文件版本
软件版本一般使用数字表示
文件版本:保存重要的历史记录、恢复数据

04 概念:版本控制软件基础功能

1、保存和管理文件的不同版本文件
管理功能体现在版本号的自动生成
在这里插入图片描述

2、提供客户端工具进行访问:不能手动操作文件
用户通过客户端工具进行访问不同版本的文件
在这里插入图片描述

3、提供不同版本文件的比对功能
在这里插入图片描述

05 概念:集中式、分布式版本控制系统、多人协作开发

5.1 文件冲突问题

在这里插入图片描述

5.2集中式版本控制(CVS,SVN)

约定好文件第几行由哪个用户来完成,之后再由版本控制器合并即可
对于多人对文件同一行进行修改,那就需要人工参与来完成
在这里插入图片描述
如果中央服务器宕机了,这时候用户无法上传和下载,因此要学习分布式

5.3 分布式版本控制

在本地搭建一个和中央服务器一模一样的资源库,通过访问本地仓库进行上传和下载文件,当中央服务器恢复之后就将本地资源库进行关联,如果网络不太好的话,本地资源库和中央服务器之间的关联就会非常慢,所以分布式非常依靠网络,好处就是资源比较安全,而且本地的操作快,之前都是通过网络与中央服务器进行交互,现在是跟本地在交互。Git属于分布式版本控制。
在这里插入图片描述

操作

克隆

将中央服务器的资源下载到本地资源库的操作就叫克隆,clone

创建仓库

在这里插入图片描述
选择New repository
在这里插入图片描述

011 GitHub Desktop分支原理

多人开发时提交每个人负责的功能对应的版本
在这里插入图片描述
这种情况下每个人提交的情况不同,这个提交的序列很乱,这种情况不太好,Git想了一种方法,见以下内容
即是为资源库创建副本,每个人在副本上进行开发
在这里插入图片描述
每个人在副本上进行开提交各自负责的功能版本在这里插入图片描述
然后进行分支合并,合并情况见下图,这种情况其实也是会出现冲突的,但是这种冲突只需要解决一次即可,再没有想出这种办法前出现的冲突是很多次的,见从这里往上面数第三张图片所示
在这里插入图片描述

分支操作

以下所给出的案例为例演示分支合并的操作,其中wangwu是项目经理,其余两位开发 人员在这里插入图片描述
1、创建一个新的库
在这里插入图片描述

在options中可以设置主分支的名字在这里插入图片描述

这个主分支就是项目经理使用的,再创建其余两个分支给两个开发人员使用

在这里插入图片描述以开发的功能名命名分支的名称,创建的两个分支分别为user和order在这里插入图片描述
分别为两个子分支提交一份文件,分别命名为user.txt和order.txt
切换到mian分支对两个分支进行合并,点击该选项

![
选择要合并的分支,并提交给分支
在这里插入图片描述
查看main分支的文件,发现已经将之前创建的文件传到mian中了
在这里插入图片描述

如何解决文件冲突问题?

场景:在user分支中创建common.txt文件,文件内容是user,在order分支中创建common.txt文件,文件内容是order,将两个文件都提交给main,再提交第二个分支时发生以下情况:
在这里插入图片描述
此时还是选择进行提交
在这里插入图片描述
选择一个编辑器打开有冲突的文件,进行修改
在这里插入图片描述
编辑成这样
在这里插入图片描述
然后选择提交,此时完成了手动解决文件的冲突问题

添加标签

在这里插入图片描述

远程仓库-GitHub

中央服务器中有一个资源仓库,这个资源仓库又叫中央仓库,也称为远程仓库。
如何操作远程仓库?
自己搭建这个远程仓库会比较麻烦,所以此时选择第三方代码托管平台,即GitHub网站,该网站即提供了远程仓库服务
在这里插入图片描述

创建文件

在github上创建文件并提交
提交码类似于版本号

修改文件

在这里插入图片描述

创建新分支

在这里插入图片描述
在上面的图中的按钮中不能New一个新的branch
于是只能在上图箭头所指的按钮旁边的mian,输入order并搜索,搜索不到,这是会提示你是否创建这个分支,创建即可
在这里插入图片描述

删除库

在setting选项划到底部

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输入之后,删除即可
在这里插入图片描述

从GitHub中下载资源库

在这里插入图片描述
设置克隆的路径在这里插入图片描述
刚开始没有clone成功,后来提示我retry一下,成功了
然后再往本地仓库中提交一份文件,之后再将本地文件上传到GitHub上面,使用以下按钮进行操作
在这里插入图片描述

在GitHub上查看
在这里插入图片描述

另一个远程仓库:gitee

由于GitHub是国外网站,有时候访问比较不方便,所以国内推出了gitee,使用GitHub来拉gitee的仓库,使用的是gitee上面仓库的地址,然后将网址输入到GitHub中就可以下载到本地了

README、IGNORE

1、GitHubDeskTop不具备比对word文档是否修改的功能,倒是可以比对是否创建该word文件的功能
2、在从上传到本地资源库的时候一些文本文件不想上传,可以使用单个文件的忽略,当然也可以使用忽略全部的不想添加某一类型的文件,以阻止该类型文件上传至本地资源库,这类文件例如:.bak

在这里插入图片描述
3、下次创建文件时如果产生了.bak类型的文件,这个时候在对比的时候就不会出现.bak文件作为要上传本地资源库的选项。

资料:【狂神说Java】Git最新教程通俗易懂

版本控制:
版本控制器:Git、SVN、VSS、Visual Studio Online

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

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

相关文章

【KVM虚拟化】· virsh管理命令

目录 🍁libvirt架构概述 🍁使用virsh管理虚拟机 🍂常用命令总结 🍁kvm基本功能管理 🍂帮助命令 🍂KVM的配置文件存放目录 🍂查看虚拟机状态 🍂虚拟机关机与开机 🍂强制虚…

使用FFMPEG进行音频重采样

准备 1. ffmpeg 4.4 2. sdl2 3.一段原始的音频PCM数据 重采样流程 1.设置输入音频参数和输出音频参数 2.根据设置的参数初始化SwrContent上下文 3.创建一个输入buffer, 根据输入的音频参数(采样率,通道数,样本位深度)申请空间…

数据库sql语句-----游标和存储过程

关键词: create procedure xxx()as.......go 查询: exec ... 从例子中感悟一下: create table cartoon( linenum int, name varchar(50) not null, line varchar(100) not null )insert into cartoon values(1,灰太…

Linux文件与目录管理笔记1

鸟哥私房菜笔记 这里写目录标题 常用文件命令cd,pwd,mkdir,rmdir 执行文件的路径的变量:$PATHls,cp,rm,mv 文件内容查看指令(cat,tac,nl)可翻页查看(more,less)More(一页一页翻动)less 数据截取(head,tail)非纯文本文件:od 常用文件命令 cd…

信创办公–基于WPS的PPT最佳实践系列 (插入表格或图标)

信创办公–基于WPS的PPT最佳实践系列 (插入图表或图标) 目录 项目背景操作步骤1、插入表格2、实现放映功能 项目背景 当表格数据过大时,将其复制粘贴到PPT上时会显得插入的表格内容小、拥挤,使PPT看起来不美观。这个问题我们可以…

关于多线程

概念 进程:正在运行的程序,不仅指处于执行期的程序本身,还包括它所管理的资源,比如由它打开的窗口,地址的资源,进程状态等等 线程:CPU调度和分派的基本单位 进程好比工厂的车间,它…

[组合数学] 排列组合

文章目录 加法法则 --每一类都能够独立的完成任务乘法法则 --集合论 任务分步骤1000和9999之间有多个具有不同数位的奇数n 7 3 1 1 2 1 3 4 ^311^213^4 3112134 求除尽n的整数个数0到10000之间有多少个整数恰好是有一位数字是5两位数字可以组成多少两位互异且非零的两位数 减…

Flutter音乐播放audioplayers

简介 Flutter的audioplayers是一个Flutter插件,可以播放多个同时的音频文件,支持Android、iOS、Linux、macOS、Windows和web平台。它有以下特点: 可以从本地文件、网络资源或内存中加载音频可以控制音量、进度、速度和循环可以播放多个音频…

pg事务:隔离级别历史与SSI

事务隔离级别的历史 ANSI SQL-92定义的隔离级别和异常现象确实对数据库行业影响深远,甚至30年后的今天,绝大部分工程师对事务隔离级别的概念还停留在此,甚至很多真实的数据库隔离级别实现也停留在此。但后ANSI92时代对事物隔离有许多讨论甚至…

Everypixel: AI图片搜索引擎

【产品介绍】 Everypixel是一个基于人工智能的图片搜索引擎。可以搜索超过 50 个图片来源的优质的授权图库版权素材图片,还可以使用免费图案功能,找到适合自己需求的可定制无缝图案。 Everypixel利用深度学习和计算机视觉技术,为客户提供先进…

黑客入门指南,学习黑客必须掌握的技术

黑客一词,原指热心于计算机技术,水平高超的电脑专家,尤其是程序设计人员。是一个喜欢用智力通过创造性方法来挑战脑力极限的人,特别是他们所感兴趣的领域,例如电脑编程等等。 提起黑客,总是那么神秘莫测。…

VONR排查指导分享

不能注册或呼叫到SIP服务器端30秒挂断呼叫的黄金法则咬线或摘机状态单通或无语音收到400 bad request收到413,513 Request Entity Too Large或Message Too Large消息收到408, 480或者487 消息483 - Too Many Hops488 – Not Acceptable Here语音质量和思…

iptables 防火墙(一)

目录 一:iptables概述 二:netfilter/iptables关系 三:四表五链 1.规则表和规则链的作用 2. 四表 3.五链 ​4.规则链之间的匹配顺序 (1)主机型防火墙 (2)网络型防火墙 5.规则链内的匹配…

【JVM】5. 本地方法接口和本地方法栈

文章目录 5.1. 什么是本地方法?5.2. 为什么使用Native Method?5.3. 本地方法栈 5.1. 什么是本地方法? 简单地讲,一个Native Method是一个Java调用非Java代码的接囗。一个Native Method是这样一个Java方法:该方法的实现…

UE Http Server 插件说明

1. Create Http Server 创建Http服务器。 Port : 监听端口,范围 1 - 65535,要保证系统唯一,不然会监听失败。 2. Bind 绑定网页路由回调。 Target :HttpServer 对象 Http Path: 绑定路径,如 ”/index“ Http Verbs…

与vCenter无法通讯时更改虚拟机的网络配置

客户的VCSA由于虚拟机的配置问题导致无法启动,需要通过重新创建VCSA的虚拟机配置的方式来恢复。但是,由于ESXi主机上的所有物理网口都已分配给了分布式网络交换机,在重建虚拟机配置时不能指定标准交换机的端口组来配置网络。而如果将虚拟机的…

【C++进阶之路】模板

前言 假如需要你写一个交换函数,交换两个相同类型的值,这时如果交换的是int 类型的值,你可能会写一个Swap函数,其中参数是两个int类型的,假如再让你写一个double类型的呢?你可能又要写一个Swap的函数重载&…

GD32F4x 加密(开启读保护功能)

参考链接1:(设置读保护) GD32F4x 如何开启读保护功能(芯片加密)?_EmbeddedOsprey的博客-CSDN博客 参考链接2:读取芯片ID进行加密 《嵌入式 – GD32开发实战指南》第19章 程序加密_gd32大小端…

训练/测试、过拟合问题

在机器学习中,我们创建模型来预测某些事件的结果,比如之前使用重量和发动机排量,预测了汽车的二氧化碳排放量 要衡量模型是否足够好,我们可以使用一种称为训练/测试的方法 训练/测试是一种测量模型准确性的方法 之所以称为训练…

黑客最常用的10款黑客工具

以下所有这些工具都是捆绑在一起的Linux发行版,如Kali Linux或BackBox,所以我们一定会建议您安装一个合适的Linux黑客系统,使您的生活更轻松 - 尤其是因为这些黑客工具可以(自动)更新。 1、Nikto(网站漏洞…