当前位置: 首页 > article >正文

Git快速入门(一)·Git软件的安装以及GitHubDesktop客户端的安装

目录

1.  概述

1.1  版本控制介绍

1.1.1  集中式版本控制

1.1.2  分布式版本控制

1.1.3  多人协作开发

2.  安装Git

3.  安装GitHubDesktop客户端


1.  概述

        Git 是一个免费的、开源的分布式版本控制系统。它能够快速高效地处理从小型到大型的各种项目。Git 具有易于学习、占地面积小、性能极快的特点。它拥有廉价的本地库、方便的暂存区域和多个工作流分支等特性,其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。

1.1  版本控制介绍

        版本控制系统会详细记录文件的每一次修改。例如,在软件开发中,每次程序员对代码文件进行修改并保存时,版本控制系统(如 Git)会记录下修改的时间、修改人以及具体的修改内容。

        对于文档编写也同样适用,比如一个团队共同撰写一份技术报告,每次有人对报告内容进行更改,系统都会进行记录。

1.1.1  集中式版本控制

(1)原理

        集中式版本控制系统有一个单一的中央服务器来存储所有版本的数据。所有的用户都从这个中央服务器获取文件的最新版本,并且在完成修改后将更新提交回中央服务器。

        例如,Subversion (SVN) 就是一种典型的集中式版本控制系统。在一个使用 SVN 的软件开发项目中,所有的开发人员都连接到同一个 SVN 服务器。当他们开始一天的工作时,他们从服务器上获取最新的代码版本。在进行了代码修改后,他们将修改后的代码提交回服务器。

(2)优点

管理集中:管理员可以很方便地在中央服务器上进行权限管理和版本管理。例如,可以轻松地控制哪些用户有权限访问和修改特定的文件或目录。

易于学习和使用:对于新手来说,集中式版本控制的概念相对简单,操作流程也较为直观。比如只需要从服务器下载、修改后再上传回服务器即可。

(3)缺点

单点故障:如果中央服务器出现故障,如硬盘损坏、网络问题等,整个团队可能无法进行版本控制操作。例如,如果服务器宕机,开发人员就无法提交他们的工作成果,甚至无法获取之前的版本。

网络依赖:开发人员必须连接到中央服务器才能进行操作。如果网络连接不稳定或者处于离线状态,工作效率会受到很大影响。例如,远程办公的开发人员在网络不好的情况下可能无法正常工作。

1.1.2  分布式版本控制

(1)原理

        分布式版本控制系统中,每个用户的本地计算机都有一个完整的版本库副本。用户可以在本地进行版本控制操作,如提交、分支、合并等,然后在需要的时候与其他用户的版本库进行同步。

        例如,Git 就是最流行的分布式版本控制系统。在一个使用 Git 的项目中,每个开发人员在自己的电脑上都有一个完整的项目仓库。他们可以在本地进行开发、创建分支、合并分支等操作,而不需要实时连接到网络。当他们准备好时,可以将本地的修改推送到远程仓库(如 GitHub、GitLab 等)与其他开发人员共享。

(2)优点

离线操作:开发人员可以在本地进行版本控制操作,无需网络连接。这对于经常需要在没有网络的环境下工作的人来说非常方便。例如,开发人员在飞机上也可以继续进行代码的开发和版本控制。

数据冗余和备份:由于每个用户都有一个完整的版本库副本,数据有一定的冗余性,这在一定程度上起到了备份的作用。即使中央远程仓库出现问题,用户本地的仓库仍然保存着完整的数据。

(3)缺点

学习曲线较陡:分布式版本控制的概念相对复杂,操作命令也更多。对于初学者来说,可能需要花费更多的时间来学习和掌握。例如,Git 的一些操作(如分支合并、冲突解决等)对于新手可能会有一定难度。

仓库占用空间大:因为每个用户本地都有完整的版本库,当项目规模较大时,本地仓库可能会占用较大的磁盘空间。例如,一个大型项目的 Git 仓库可能会占用几个 GB 甚至更多的磁盘空间。

1.1.3  多人协作开发

(1)原理

        在多人协作开发中,多个开发人员共同参与一个项目的开发。他们通过版本控制系统来协调各自的工作,避免冲突,确保项目的顺利进行。
        例如,在一个软件公司中,一个项目可能有前端开发人员、后端开发人员、测试人员等多个角色。他们都在同一个项目的代码库上进行工作。通过版本控制系统,他们可以获取最新的代码,进行自己的开发工作,然后将自己的工作成果合并到主代码流中。

(2)优点

提高工作效率:通过分工协作,不同的人员可以专注于自己擅长的领域,加快项目的开发进度。例如,前端开发人员专注于界面设计,后端开发人员专注于服务器端逻辑,从而提高整体开发效率。

代码质量提升:多人对代码进行审查和修改,可以发现更多的问题,提高代码的质量。例如,在代码合并时,其他开发人员可以对提交的代码进行审查,提出改进建议。

(3)缺点

沟通成本高:多人协作需要大量的沟通来确保对项目的理解一致。如果沟通不畅,可能会导致工作重复、方向错误等问题。例如,如果前端和后端开发人员对接口的定义没有沟通清楚,可能会导致开发出来的模块无法对接。

代码冲突:当多个开发人员同时修改了同一部分代码时,可能会出现代码冲突。解决这些冲突需要花费时间和精力。例如,两个开发人员同时修改了一个函数的参数,在合并代码时就需要协调解决这个冲突。

2.  安装Git

        这个有的可能打不开网站链接,所以直接下载到百度网盘,直接提取下载即可:

链接: https://pan.baidu.com/s/1Ob_QtRXIsjS_UrxkLDQNyA?pwd=2dcg 提取码: 2dcg 

        双击进行安装: 

        更改自己的路径,继续点击“Next”:

        这个界面是告诉我们会安装哪些组件,需要多大内存,可以直接点击“Next”:

       继续点击“Next”:

        继续点击“Next”:

        继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

         继续点击“Next”:

        点击“Install”:

         点击“Finish”:

        可以看到:

        后续想要打开可以鼠标右键,点击更多选项,可以看到如下,点击Open Git Bash here:

         就能重新打开上述界面。

3.  安装GitHubDesktop客户端

        找到Git的官网:

Git官网链接:Git

        找到Downloads点击:

        找到GUI Clients点击:

        找到GitHub Desktop客户端点击下载:

        跳转到如下界面,点击箭头位置:

        点击下载:

        下载完成:

 

链接: https://pan.baidu.com/s/1GfGVmTtt6AJ07Djuus3aXg?pwd=jb4i 提取码: jb4i 

        点击安装:

        注册登录一个账号即可。

GitHub_时光の尘的博客-CSDN博客


http://www.kler.cn/a/467126.html

相关文章:

  • HTML5实现好看的博客网站、通用大作业网页模板源码
  • STLG_01_10_程序设计C语言 - 字符串
  • 【CSS】第一天 基础选择器与文字控制属性
  • 【软考网工笔记】计算机基础理论与安全——网络规划与设计
  • Unity热更文件比较工具类
  • 数据仓库中的指标体系模型介绍
  • 装饰器模式详解
  • clickhouse Cannot execute replicated DDL query, maximum retries exceeded报错解决
  • Android 14.0 系统限制上网系列之iptables用IOemNetd实现app上网黑名单的实现
  • 行为模式4.观察者模式------消息推送
  • LangChain+博查搜索API轻松实现实时信息搜索
  • 【每日学点鸿蒙知识】ASON工具、自定义tabbar、musl、Text异常截断等
  • 【C语言】可移植性陷阱与缺陷(五): 移位运算符
  • 初学stm32 --- 存储器类型
  • 文献阅读 250104-Overconfidence in climate overshoot
  • 文件上传漏洞利用与绕过姿势总结
  • 【大模型】ChatGPT 数据分析与处理使用详解
  • SQL 基础教程 - SQL SELECT 语句
  • 部署项目添加工程名的步骤
  • 哈希算法详解及案例应用
  • Jurgen提出的Highway Networks:LSTM时间维方法应用到深度维
  • Java:缓存:LinkedHashMap实现Lru
  • 【C++】开源:Armadillo数值计算库配置与使用
  • 第28天:PHP应用Cookie脆弱Session固定Token唯一身份验证数据库通讯
  • 一文理解Vue.js 与 Vue Router:构建现代单页面应用
  • Maven 详细配置:Maven settings 配置文件的详细说明