【Git】安装和常用命令的使用与讲解及项目搭建和团队开发的出现的问题并且给予解决

目录

Git的简介

介绍

 Git的特点及概念

Git与SVN的区别

图解

​编辑 命令使用

安装

 使用前准备

搭建项目环境

​编辑 团队开发


Git的简介

介绍

Git 是一种分布式版本控制系统,是由 Linux 之父 Linus Torvalds 于2005年创建的。Git 的设计目标是为了更好地管理 Linux 内核代码的开发。相较于其他版本控制系统,如 SVN,Git 有更快的速度、更强大的分支管理功能、更好的适应性和更好的安全性。Git 现在已成为最流行的版本控制系统之一,广泛应用于软件开发和团队协作。

 Git的特点及概念

分布式版本控制: Git 是分布式的,这意味着每个开发人员都拥有完整的代码库的副本,而不是依赖于集中式服务器。这使得开发人员能够独立工作,并在没有网络连接的情况下进行版本控制操作。

代码仓库: Git 使用仓库来存储代码和版本历史。一个仓库包含所有的代码、分支、提交历史以及配置信息。

提交(Commit): 提交是 Git 中的基本操作,它代表了代码库的一个快照,包括一组修改和相关的提交信息。提交是不可更改的,每个提交都有一个唯一的哈希标识。

分支(Branch): 分支是指代码库中的不同开发线,允许开发人员在不影响主要代码线的情况下进行独立的开发。Git 的分支操作非常高效,允许轻松创建、合并和删除分支。

合并(Merge): 合并是将一个分支的更改合并到另一个分支的操作。Git 提供了多种合并策略,以确保代码被合并到目标分支时不会引入冲突。

远程仓库(Remote Repository): 远程仓库是分布式团队协作的关键,它允许开发人员协同工作、共享代码,并在不同的位置之间同步代码。

克隆(Clone): 克隆是从远程仓库创建一个本地副本的过程。通过克隆,开发人员可以开始在自己的计算机上工作。

拉(Pull)和推(Push): 拉操作用于将远程仓库的更改同步到本地仓库,而推操作用于将本地更改上传到远程仓库。

标签(Tag): 标签是对特定提交的符号引用,通常用于标识版本或重要的里程碑。
 

Git与SVN的区别

Git 和 SVN 是两种不同的版本控制系统,虽然它们的目的类似,但有很多区别。以下是其中一些主要区别

  1. 分布式 vs 集中式:Git 是一种分布式版本控制系统,每个人都可以获取完整的代码副本并在本地工作,因此即使没有网络连接,也可以持续工作。而 SVN 是一种集中式版本控制系统,每个开发者只能获取代码的一个副本,需要访问集中式服务器才能进行工作。

  2. 分支管理:Git 的分支管理非常强大且易于操作,可以轻松地在本地创建、切换、合并和删除分支。而 SVN 的分支管理相对较弱,需要在服务器端进行操作,因此需要更多的权限。

  3. 速度:Git 的速度比 SVN 快得多,因为 Git 使用本地硬盘缓存,而 SVN 每次操作都需要从服务器获取数据。

  4. 可用性:Git 可以在 Windows、Linux 和 Mac OS X 等多个操作系统平台上运行。而 SVN 的 Windows 支持相对较差,通常需要依赖第三方工具。

  5. 数据完整性:Git 将数据保存在一个以 SHA1 校验和为基础的内容寻址文件系统中,从而可以防止数据损坏和篡改。而 SVN 依赖于中央服务器来保护数据完整性。

总的来说,Git 功能更加强大且灵活,适用于需要高效协作和分支管理的团队开发;而 SVN 则更适合单个开发者或较小的团队,不需要太多分支管理功能。 

图解

 命令使用

安装

在Git官网进行下载,( 下载2.2以上的版本 )

Git - Downloads

 进入官网点击Windows 

点击64下载

 

接下来我们开始安装,没有效果图显示的话,直接就默认跳过就行 

 

 

 

 

 

 

 

 使用前准备

首先我们需要有一个gitee的账号,前往gitee的官网进行注册 

Gitee - 基于 Git 的代码托管和研发协作平台

创建账号之后创建一个仓库。点击右上角的+号,并且点击新建仓库 

 

 

创建完成后,会有简易的命令行入门教程,如:Git 全局设置,创建 git 仓库,已有仓库?

将这些命令全部复制到一个文本文件中进行保存。

 之后在本地的目录中,创建一个工作区间,来对项目的开发,在这个工作区间中,鼠标右键

点击Git Bash Here ,打开命令窗口。

 

打开窗口后,分别将Git 全局设置的命令输入其中分别执行一次。 

 

执行完后,查看本地用户下有没有 .gitconfig 的这个文件,打开看看,和我们的信息是一样的

就OK了

 

之后根据 创建 git 仓库的命令,先创建仓库,在进入仓库,进入后将该仓库标记为Git管理的仓库 

 

 

之后进行根据创建 git 仓库的命令,创建一个文件,再将文件给Git管理,之后查看状态

看到如图所示说明已经给Git管理,如果是红色说明没有。

 

进行根据命令,上传到本地仓库并且给个备注,再将本地仓库和远程仓库进行绑定,绑定后,再将文件上传到远程仓库 

本地创建绑定远程仓库时,会要输入Git账号和密码。 

 

 再到创建仓库完成的页面刷新,就会看到所上传的文件

搭建项目环境

将项目的文件夹复制到Git工作区间,再将这个项目给Git管理,并且仓库状态。

git add .  这个命令是将该文件夹下所有文件给Git管理

 

将项目上传到本地,并且给与备注,再将项目上传到远程仓库。 

 团队开发

项目已经在远程仓库部署好了,现在比如 : 开发团队中其他人需要获取其中的项目。

在这个需要获取其中项目的人中的工作区间,一样的,先点击Git Bash Here ,打开命令窗口。

在命令窗口中输入克隆远程仓库中使用文件的命令 : 

git clone  https://gitee.com/Jun-san/jun123.git

上面的网址是远程仓库的地址,在右上角有克隆的网址,谁需要就复制给谁即可,再加上

命令执行即可拿到所有的文件。

 

执行完成之后可以进入目录中查看到所有的文件

 

 okok,今天就到这里结束了,咱们下次再见,下班下班!!!!!!!!!!!!!!

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

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

相关文章

VUE页面导出PDF方案

1,技术方案为:html2canvas把页面生成canvas图片,再通过jspdf生成PDF文件; 2,安装依赖: npm i html2canvas -S npm i jspdf -S 3,封装导出pdf方法exportPdf.js: // 页面导出为pdf格式 //titl…

CentOS 7 双网卡绑定热备 —— 筑梦之路

为什么需要? 1. 增强网络的可靠性 2. 保障服务的可持续性 3. 降低网卡故障带来的不良影响 有哪些模式? 模式0:轮询策略(round robin),mode0,优点:流量提高一倍缺点:需要接…

MySQL binlog 日志解析后的exec_time导致表示什么时间?

1. exec_time 到底表示什么时间? MySQL binlog日志解析后,我们能看到会有 exec_time ,从字面意思理解这个记录的是执行时间,那这个记录的到底是单条sql的执行时间?还是事务的执行时间?下面通过测试来解读一…

ubuntu下Anaconda环境安装GPU的pytorch(docker镜像)

实验室需要给每个人分配docker的container环境,为了节省系统的空间,打算把anaconda和深度学习的开发环境配置好拉取镜像以省时间。 基础环境配置 apt更新了清华源 安装了基础环境 gcc vim Linux文本编辑库 openssh-server ssh远程连接库 net-tools 包含…

vue-cal 使用教程

目录 0. 介绍及效果展示 1.vue2环境安装 2.页面引入 3.使用 4.效果图 0. 介绍及效果展示 vue-cal 组件比较灵活,可以随意切换年、月、周、日、时间历图,放几张截图看下效果 1.vue2环境安装 vue3直接可以看本文最下方的API,有详解 npm …

HBase学习笔记(1)—— 知识点总结

目录 HBase概述 HBase 基本架构 HBase安装部署启动 HBase Shell HBase数据读写流程 HBase 优化 HBase概述 HBase是以 hdfs 为数据存储的,一种分布式、非关系型的、可扩展的 NoSQL 数据库 关系型数据库和非关系型数据库的区别: 关系型数据库和非关…

“位不配财”?程序员兼职,稳妥挣钱才是王道!

一、配不上 戏称程序员为“码农”,一年到头,像那地里的老黄牛和勤勤恳恳的老农民。 又像极了那工地上的农民工,天天搬砖,苦得嘞。 作为推动时代进步的得力干将,工作量自然是不容小觑。说程序员不加班都没人信&#x…

腾讯云真的是良心云!服务器带宽、CPU、硬盘IO性能大揭秘!

本文将通过对腾讯云服务器CVM S5 4核配置的云服务器进行测试,来评估其在带宽、CPU和硬盘IO性能方面的表现。 在云服务器的并发处理中,带宽是一个重要的因素。经过测试,腾讯云的带宽网络表现非常出色,能够跑满带宽,同时…

深度学习(生成式模型)——Classifier Free Guidance Diffusion

文章目录 前言推导流程训练流程测试流程 前言 在上一节中,我们总结了Classifier Guidance Diffusion,其有两个弊端,一是需要额外训练一个分类头,引入了额外的训练开销。二是要噪声图像通常难以分类,分类头通常难以学习…

C语言 预处理详解

目录 1.预定义符号 2.#define 2.1#define 定义标识符 2.2#define 定义宏 2.3#define 替换规则 2.4#和## 2.4.1# 的作用 2.4.2## 的作用 2.5 带有副作用的宏参数 2.6宏和函数的对比 对比 **2.7内联函数 2.8命名约定 3.#undef **4.命令行定义 5.条件编译 常…

50基于matlab的传统滤波、Butterworth滤波、FIR、移动平均滤波、中值滤波、现代滤波、维纳滤波、自适应滤波、小波变换

基于matlab的传统滤波、Butterworth滤波、FIR、移动平均滤波、中值滤波、现代滤波、维纳滤波、自适应滤波、小波变换,七种滤波方法,可替换自己的数据进行滤波,程序已调通,可直接运行。 50matlabButterworth滤波 (xiaohongshu.com)…

BSP-STM32移植FreeRTOS

在stm32裸机工程中的Middlewares目录添加freeRtos源码 在裸机工程中的main中调用freertos接口