Git仓库创建、代码更新、代码提交完整版(Gitee、Github、GitLab对比)

news2025/3/14 20:16:12

区别

  • Gitee、Github、GitLab三个都提供了 个人和团队存储、分享、发布和协同开发项目的中心化云存储功能
名称代码版块控制管理工具是否收费搭建环境联网/
github

 git

公有仓库免费

私有仓库收费(鼓励代码共享)

企业私有需要搭建可离线(分布式)
gitee

 git

个人免费

企业免费

按团队人数、仓库容量收费

可离线(分布式)
gitlab

 git

私有仓库免费可离线(分布式)
svnSubversion/TortoiseSvn免费是(集中式)那得有个SVN服务器

git名词术语解释

名词说明举例
仓库(Repository)产品代码仓库,保存了所有文件的修改历史。开发者A、B、C、D代码就相当于不同的货物不管是成品还是半成品 往这个仓库送
本地仓库(local Repository)本地仓库,分布式特点,这样本地就能提交版本,进行代码版本控制,也就是离线状态也能用开发者A、B、C、D自己的小仓库,即便通往仓库(Repository)的断了,也能保证货物的生产记录
暂存区(Staging area)暂存区是暂存工作区的文件变化。见下方【git图解】
索引(Index)索引是暂存区的另一种术语,也是暂存区概念
签入(Checkin)将新版本复制回仓库
签出(Checkout)从仓库中将文件的最新修订版本复制到工作区
提交(Commit)将暂存区的文件提交到仓库见下方【git图解】
冲突(Conflict)多人对同一文件的同一部分进行了修改,导致了冲突的发生。开发者A、B、C、D做了修改了同一个,导致了冲突的发生。
合并(Merge)将指定分支合并到当前分支
头(HEAD)指向当前选择的分支。
修订(Revision)表示代码的一个版本状态。Git通过用SHA1 hash算法表示的ID来标识不同的版本。
标记(Tags)标记某个分支的某一个版本,方便检索和查看。
推送(Push)向远程仓库推送当前分支
拉取(Pull)从远程仓库拉取文件,并合并入当前分支。见下方【git图解】这两个尿性相同
拷贝(clone)复制远程仓库到本地
master(默认分支)

供所有团队成员修改,按我的理解,它是“主干”更贴切

可设置由谁来推送,谁来合并规则,删除规则,则表示谁都可以操作

默认为保护分支:自定义保护策略,默认仓库管理员才能管理(推送)被保护的分支
 

产品底图(相当于最终稳定呈现版)
常规分支

常规分支可通过gitee管理后台可视化创建,可以通过git命令创建

就是团队成员用的分支,如果不创建,那就是默认master分支

仓库成员(开发者权限及以上)可推送分支

基于底图画出来的草稿,开发者A、B、C、D都可以可以画
只读分支任何人都无法推送代码(包括管理员和所有者),需要推送代码时应设为“常规”或“保护”分支

 

git图解

稍微瞄一眼这图,几乎git常用的命令都基于这个图!!!

为了便于理解,什么时候用clone、add、commit、pull、push、reset、fetch、diff 这个图就有思路

svn图解

git、svn命令一览

当然,

svn --help

git  --help  命令都能看到

svn命令git命令

svn详细搭建链接

服务器与本地安装SVN详细步骤(linux/centos)_四肢发达的猿的博客-CSDN博客_本地svn服务器安装SVN步骤:①安装svn环境②创建svn库(项目库)③设置权限用户、设置密码、设置认证域④将svn库与项目关联起来 svn checkout⑤设置钩子一、服务器安装svn有网络的情况下,一句代码完成,下载大小2.8M,安装大小13M yum install subversion效果如下:输入Y,进行转换安装。,如下图:验证是否安装成功,如下图:svn --version二、创建项目的SVN库比如我们搭一个商城,仓库名为b2c-house:这个仓库我要放在/.https://blog.csdn.net/weixin_39921970/article/details/109180489?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167144561716782388094839%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=167144561716782388094839&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-2-109180489-null-null.nonecase&utm_term=svn&spm=1018.2226.3001.4450

linux/centos服务器项目代码上传到SVN仓库本地SVNUP_四肢发达的猿的博客-CSDN博客基于上一篇的服务器搭建SVN环境,这里描述下服务上的代码提交到svn仓库,然后本地checkout。前置条件:①服务器已有svn环境②项目目录已有SVN版本控制③项目目录下个别文件或文件夹,是在服务器中,但是没有在版本控制中,这类的本地svn是不能svn up下来这个文件。那就是服务器上的项目文件,加入版本控制。项目目录结构如下:如果服务器上有个test.html 没在版本控制中,如下图本地SVN UP 是没有test.html只需要两步:①递归提交项目目录下所有文件,这一步只是.https://blog.csdn.net/weixin_39921970/article/details/109185584?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167144561716782388094839%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=167144561716782388094839&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~rank_v31_ecpm-1-109185584-null-null.nonecase&utm_term=svn&spm=1018.2226.3001.4450

gitee完整使用步骤

  • 平台账号

  • 建仓库(remote repository)

仓库和项目先后创建都没关系,都可以相互关联上

 

成功后,仓库信息如下:

  • 建项目

仓库和项目先后创建都没关系,都可以相互关联上

  • 安装本地git工具

官方地址:

Git - Downloading Packagehttps://git-scm.com/download/win

 安装到底,验证成功如下图:

  • 把线上的仓库的代码拉到本地项目文件夹

步骤一:瞄一眼仓库路径

gitee首页→代码 →  ···  → 功能设置 → 基础信息

或者:

gitee首页→代码 →  仓库 → 任意一个仓库 → 概览

 

步骤二:本地新建个项目文件夹

demo-vue-master

 进目录下右击,如下图:

 第一次需全局配置,第二次就不需要这一步(毕竟我这用户都登录了git)

git config --global user.name "Gitee账号的姓名"
git config --global user.email "Gitee账号的邮箱"

初始化

git init

如下图:

 测试下创建文件,并提交gitee仓库如下:

touch README.md

效果如下图:

把README.md提交至暂存区

git add README.md
git commit -m "任意备注,不写也行,必须得引号 这句才把暂存的版本提交到远程gitee创的仓库"
git remote add origin https://gitee.com/gitee自动生成的名称/repositoryname.git #本地关联远程仓库,#后的不要写
git push -u origin master  #推送到默认分支master,可新加分支

结合“git、svn图解”git add 只是到暂存区, 需要git commit -m ""

本地操作如下图:

验证gitee仓库有没文件:

  • 其他开发成员加入并使用git版本控制

gitee首页→右侧 → 添加人员  (这个是先加人员)

gitee首页→代码 →  ···  → 仓库列表 功能设置 → 成员管理(选择上面加入的人员,加入到这个项目的仓库代码同步工作)

团队其他成员同步gitee仓库代码

登录下各自的账户

git config --global user.name "你的名字"

git config --global user.email "你的邮箱"

拉取仓库代码

第一次拉取:

git init  #第一次用初始化,后续不用
git clone 仓库地址  #第一次要这个
git pull 仓库地址 master   #指定仓库的哪一个分支,默认master

或者用第一次拉取:

git init  #第一次用初始化,后续不用
git remote add origin https://....
git pull origin master #此处拉取得是master分支的代码

很多帖子用clone,原理是 首次用git 需登录、 初始化(init)、用git把本地仓库连接远程仓库、然后拉代码或提交代码的操作

后面的每次拉取就是:

git pull

提交代码

git add 文件名  #若添加当前目录的全部文件 git add .
git commit -m "备注"

查看提交记录

git log

线上个版本有差异

git fetch --all   #拉到本地仓库

git reset --hard origin/master #本地仓库拉到本地

git pull   #拉

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在英特尔独立显卡上部署YOLOv5 v7.0版实时实例分割模型

作者:贾志刚 英特尔物联网创新大使  目录 1.1 YOLOv5实时实例分割模型简介 1.2 英特尔消费级锐炫™ A 系列显卡简介 1.3 在英特尔独立显卡上部署YOLOv5-seg模型的完整流程 1.3.1 搭建YOLOv5开发环境和OpenVINO部署环境 1.3.2 验证YOLOv5开发环境和OpenVINO部…

Spring Cloud之acos服务注册与Dubbo

Spring Cloud之acos服务注册与Dubbo nacos是springcloud的扩展,注册中心功能通过NacosDiscoveryClient 继承DiscoveryClient,在springcloud中,与Eureka可以无侵入的切换。注册中心可以手动剔除服务实例,通过消息通知客户端更新缓…

【推荐】数据湖技术及实践与案例资料汇总合集47篇

数据湖或hub的概念最初是由大数据厂商提出的,表面上看,数据都是承载在基于可向外扩展的HDFS廉价存储硬件之上的。但数据量越大,越需要各种不同种类的存储。最终,所有的企业数据都可以被认为是大数据,但并不是所有的企业…

30多条立马执行的站内SEO优化建议

站内SEO优化,讲来讲去很多年,但是国内很少有比较全面的Check List。国外的文章,一般都是教你如何优化一篇文章。而不是教你如何打造一个一个商业化的产品页。本篇文章是结合我这几年的独立站SEO项目经验,对站内SEO进行的一些总结,有30多条立马执行的站内SEO优化建议。 其实…

SpringBoot+Actuator+Prometheus+Grafana进行可视化应用监控

最终效果 actuator actuator是什么 看一看chatGPT怎么说? Spring Boot Actuator是Spring Boot的一个子项目,它为监视和管理Spring Boot应用程序提供了附加功能。它提供了一组端点,允许您监视和管理应用程序,如运行状况检查、度量…

[附源码]计算机毕业设计Python电影推荐网站(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

目录 1.1 产业实践中部署AI模型的痛点 1.1.1 部署模型的典型流程 1.1.2 端到端的AI性能 1.1.3 部署模型的难点和痛点 1.2 FastDeploy简介 1.3 英特尔独立显卡简介 1.4 使用FastDeploy在英特尔CPU和独立显卡上部署模型的步骤 1.4.1 搭建FastDeploy开发环境 1.4.2 下载…

秒杀/抢购架构设计

1 秒杀业务分析 1.1 正常电子商务流程 (1)查询商品; (2)创建订单; (3)扣减库存; (4)更新订单; (5)付款&…

Odoo丨手把手教你灵活控制表单明细的创建与删除!

文章目录一、前言二、表单明细的创建与删除1.根据主表字段带出明细信息2.根据主表字段控制明细表的添加和删除功能三、总结一、前言 我们知道,在Odoo页面上,控制的最小单位是字段,可通过Odoo提供的属性,控制字段的必填、只读、隐…

Spring Cloud 应用 Proxyless Mesh 模式探索与实践

作者:十眠 Service Mesh 简介 Service Mesh 早已不是一个新兴的概念,目前已经有许多关于 Service Mesh 的探索以及实践。 2016 年可以说是 Service Mesh 的元年,Buoyant 公司 CEO William Morgan 率先发布 Linkerd ,成为业界首…

Java中的多线程(上)

作者:~小明学编程 文章专栏:JavaEE 格言:热爱编程的,终将被编程所厚爱。 目录 多线程 什么是线程 为什么需要多线程 进程和线程的区别(面试重点) Java实现多线程 多线程带来的好处 认识Thread类 T…

前端基础_贝塞尔和二次方曲线

贝塞尔和二次方曲线 贝塞尔曲线可以是二次和三次方的形式,常用于绘制复杂而有规律的形状。 绘制贝塞尔曲线主要使用bezierCurveTo方法。该方法可以说是lineTo的曲线版,将从当前坐标点到指定坐标点中间的贝塞尔曲线追加到路径中。该方法的定义如下。 b…

艾美捷耗氧率检测试剂盒说明书及相关研究

细胞内稳态通过ATP的产生来维持。ATP的生成可以通过单独的糖酵解(无氧呼吸)或通过糖酵解与氧化磷酸化的耦合来完成。氧化磷酸化是氧(O2)依赖性的,发生在线粒体中,是哺乳动物细胞合成ATP的最有效和优选的方法…

电力系统可视化——比PowerWorld还精彩(Matlab实现)

目录 1 概述 2 PowerWorld 3 案例及Matlab代码实现 3.1 案例 3. 2 结果展现 3.3 Matlab代码实现 1 概述 信息可视化的应用为电力行业带来了巨大的希望,但其潜力尚未被可视化社区充分挖掘。先前关于电力系统可视化的工作仅限于在地理布局之上描绘原始或处理过的…

【数据结构】单链表OJ

目录 一、反转单链表 描述 二、返回链表的中间节点 三、返回倒数第K个节点 描述 示例1 四、合并两个已排序的链表 描述 五、分隔链表 六、判断一个链表是否为回文结构 描述 示例1 示例2 示例3 七、两个链表的第一个公共结点 描述 输入描述: 返回值描…

LICEcap:GIF屏幕录制工具

写博客的时候,我经常会用到需要自制gif的场景,我之前一直使用视频转gif工具处理https://tool.lu/video2gif/,大致就是利用qq录屏成视频,然后通过工具转成gif。 今天无意间看到其他博主用了 LICEcap 工具 LICEcap 是一款简洁易用的…

“隐形贫困者”自学Python做副业,教你如何月入10000+

现在的年轻人总是觉得攒不下钱,虽然表面风光,每天出入高级CBD,可是几乎每个人都是月光族,这一类人被定义为“隐形贫困者”,原因是什么呢?根据小编的分析,现在人们对生活质量要求普遍提高了&…

毕业设计 单片机智能避障超声波跟随小车 - 物联网 嵌入式

文章目录0 前言1 项目背景2 实现效果3 设计原理HC-SR04超声波模块5 部分代码6 最后0 前言 🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告…

玩转云端 | 数据管理深似海,运维如何变“路人”?

数字技术正在改变人们生产、生活的方方面面。作为数字经济时代的重要生产要素,数据正以指数级别爆发式增长,企业对于数据存储及处理的方式和要求已是“今时不同往日”。最早古人存储数据的方法是“以物记物”或“借物记物”,即用更易于携带的…

如何视频裁剪?建议收藏这几种裁剪视频的方法

现在的网络很是方便,我们可以轻轻松松的在网上找到各种网课视频来进行学习。不过有些网课里面的重点内容不仅比较少,还很分散,让我们很难做到高效的学习。但其实我们可以通过视频裁剪,将有重点内容的视频裁剪下来,这样…