为什么需要 git 和 相关的小知识

news/2024/10/31 2:21:30/

为什么需要git和相关的小知识

先看一个实际需求,引出Git

问题: 公司五一活动计划

● 先说一个最简单的情况,比如你做了公司五一活动计划书(如图)

在这里插入图片描述

解决方案: 版本管理工具(Git)

一句话: Git 是目前最流行的分布式版本控制软件

Git 是怎么来的?

Git 之父:李纳斯·托沃兹(Linus Benedic Torvalds)1969、芬兰

Git 小故事

  1. Linux 内核开源项目有着为数众广的参与者, 绝大多数的Linux 内核维护工作, 都花在了提交补丁、保存归档的繁琐事务上(1991-2002 年间)。到2002 年, 整个项目组开始启用一个专有的分布式版本控制系统BitKeeper 来管理和维护代码

  2. 到了2005 年, 开发BitKeeper 的商业公司同Linux 内核开源社区的合作关系结束,他们收回了Linux 内核社区免费使用BitKeeper 的权力。(Linux 社区有好事者,破解BitKeeper, 也让BitKeeper 恼火.)

  3. 自己动手丰衣足食, Linus Torvalds 用2 周,开发出一套版本控制系统, 也是后来的Git

  4. Git 是目前世界上最先进的分布式版本控制系统, 免费、开源

版本管理

一句话: 在开发的过程中用于管理对文件、目录或工程等内容的修改历史,方便查看历史记录,备份以便恢复以前的版本的软件工程技术

可以完成哪些功能?

  1. 实现跨区域多人协同开发

  2. 追踪和记载一个或者多个文件的历史记录

  3. 组织和保护你的源代码和文档

  4. 统计工作量

  5. 并行开发、提高开发效率

  6. 跟踪记录整个软件的开发过程

  7. 减轻开发人员负担,节省时间,同时降低人为错误

主流版本控制工具/软件

  1. Git

  2. SVN(Subversion)

  3. CVS(Concurrent Versions System)

  4. VSS(Micorosoft Visual SourceSafe)

  5. TFS(Team Foundation Server)

  6. Visual Studio Online

版本控制分类

本地版本控制

本地版本控制
记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS

示意图

在这里插入图片描述

集中版本控制

● 介绍

  1. 所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改

  2. 用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本

  3. 所有数据都保存在单一的服务器上,如果这个服务器会损坏(有很大的风险), 这样就会丢失所有的数据,需要定期备份

  4. 代表产品:SVN、CVS、VSS

● 示意图

在这里插入图片描述

分布式版本控制

  1. 所有版本信息仓库全部同步到本地的每个用户

  2. 可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push 到相应的服务器或其他用户那里。

  3. 每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据

  4. 更加安全, 不会因为服务器损坏或者网络问题,造成不能工作的情况

  5. 代表软件: Git

示意图

在这里插入图片描述

Git VS SVN

SVN

  1. SVN 是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都
    是自己的电脑,所以首先要从中央服务器得到最新的版本
  2. 完成工作后,需要把自己的代码送到中央服务器。集中式版本控制系统是必须联网才能
    工作

Git

  1. Git 是分布式版本控制系统,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。
  2. 协同的方法说明:比如自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git 可以直接看到更新了哪些代码和文件

Git 下载&安装

官网

  1. 地址: https://git-scm.com/

  2. 下载版本: Git-2.33.0.2-64-bit.exe

  3. 下载慢,可以到镜像下载: http://npm.taobao.org/mirrors/git-for-windows/

卸载

  1. 说明:如果安装过,可以卸载和老师版本保持一致
  2. 卸载步骤
  3. 到windows 的应用和功能,到的git, 卸载即可(如图

在这里插入图片描述

检查环境变量, 如果有和Git 相关的,删除即可

安装

  1. 说明:直接下一步即可,建议安装到非系统盘, 比如d:\

  2. 细节:安装路径不要带中文、空格、特殊字符

  3. 验证安装是否成功

点击右键如图

win10直接右击就可以
在这里插入图片描述

win11就需要

在这里插入图片描述

就可以看到了

在这里插入图片描述

Git 资料

Git 大全

  1. 地址: https://gitee.com/all-about-git
  2. Git 常用命令
    仓库https://gitee.com/all-about-git#%E4%BB%93%E5%BA%93
    配置https://gitee.com/all-about-git#%E9%85%8D%E7%BD%AE
    增加/ 删除文件https://gitee.com/all-about-git#%E5%A2%9E%E5%8A%A0%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6
    代码提交https://gitee.com/all-about-git#%E4%BB%A3%E7%A0%81%E6%8F%90%E4%BA%A4
    分支https://gitee.com/all-about-git#%E5%88%86%E6%94%AF
    标签https://gitee.com/all-about-git#%E6%A0%87%E7%AD%BE
    查看信息https://gitee.com/all-about-git#%E6%9F%A5%E7%9C%8B%E4%BF%A1%E6%81%AF
    远程同步https://gitee.com/all-about-git#%E8%BF%9C%E7%A8%8B%E5%90%8C%E6%AD%A5

Git 互动学习

地址: https://oschina.gitee.io/learn-git-branching/


http://www.ppmy.cn/news/252336.html

相关文章

2023年6月 国内大语言模型对比【国内模型正在崛起】

先说一下这个文章怎么来的。因为朋友问我大语言模型可以生成公务员面试回答不,我说可以啊。之前看文心有这个服务。我想最近好几个模型也没用了测一把!结果!大吃一惊!我觉得我的三个傻孩子长大了!(chatglm1…

Nginx 常用操作的总结

一、安装 直接安装 yum install nginx –y如果 yum 源缺失的话,如下更新 yum 源【未测试】 vim /etc/yum.repos.d/nginx.repo[nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/\$releasever/\$basearch/ gpgcheck1 enabled1 gpgke…

c++实现一个单门课程成绩管理系统

实验内容 实现一个单门课程成绩管理系统。进入系统时,用户可选择身份: 1.教师; 2 学生。 以教师身份进入后,如果上次已保存了数据,可将文件中数据读取出来,并 允许修改或添加新数据。如果为第一-次录入 (之前无保存的数据)&am…

软件开发报价的计算方法(转载)

软件开发报价的计算方法 (转载) 1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格 = 开发工作量 开发费用/人月 1.1开…

自己换了空调滤芯,终于告别了泥土味

车开一年了,味道越来越大,只是一直苦于没时间,本周正好要保养了,下定决心一定要换掉,在TB买了两块空调滤,一块换,一块留着以后用,又买了一套螺丝刀,和一瓶空调管道清洗液…

软件开发报价的计算方法[转载]

1.软件开发价格估算方法 软件开发价格与工作量、商务成本、国家税收和企业利润等项有关。为了便于计算,给出一个计算公式: 软件开发价格 = 开发工作量 开发费用/人月 1.1开发工作量 软件开发工作量与估算工作量经验值…

格力与奥克斯空调在京东的选购指数(java爬虫案例-代码实现)

要么不做,要做就做完 此项目目录结构 项目分析 环境准备 开发准备 数据库表 添加依赖 添加配置文件 编写pojo 编写dao 编写service接口 service实现类 StringBoot引导类 封装Htmlunit 实现数据抓取 成功展示 这前段时间有一件事“格力举报奥克斯空调质…