振南技术干货集:研发版本乱到“妈不认”? Git!(5)

news2024/10/5 20:26:56

注解目录

1、关于 Git

1.1Git 今生

(Git 和 Linux 的生父都是 Linus,振南给你讲讲当初关于 Git 的爱恨情愁,其背后其实是开源与闭源两左阵营的明争暗斗。)

1.2Git的爆发

(Git 超越时代的分布式思想。振南再给你讲讲旧金山三个年轻人创办 GitHub,打败Google,逆袭上位的创业故事。据说 GitHub 服务器要放到火星去? )

2、用Git代码

2.1Git化使用

(以实例来讲解代码仓库的创建、提交、分支等基础内容。)

2.2 Git 的远端使用

(以实例来讲解仓库的克隆、推送等基础内容。)

2.3代码拯救纪实

(绝不会把代码弄丢。一次有惊无险的代码追回经历,根源是对 Git 机制理解不深。)

3、用Git 管理硬件PCB

(对于硬件资源你是如何管理的? final _final _打死不改_final_1.2.zip? 还是用 Git 吧。)

3.1Git的增量

(Git 具体是如何对资源进行管理的? )

3.2 AD 中的Git

(AD 是原生支持 Git 的,让我们把它利用起来。)

3.3PCB 工程的协作开发

(团队协作中的冲突是如何产生的?如何解决冲突? )

用Git 管理硬件PCB

PCB 工程的协作开发


我们使用 Git 一方面是为了管理版本,另一方面是让开发工作实现并行化和更好的团队多人协作。Git 解决了很多团队协作过程中经常出现的问题,遇到最多的就是多人同时开发同一分支,如图 4.53 所示。


图4.53 多人同时开发同一分支时push失败

解决的方法就是 A 应该先 git pull,将远端仓库同步到本地,并在本地完成合并和提交,然后再 push。具体过程,如图 4.54 所示。

值得注意的是,在 pull 之后在本地进行合并时,是有可能出现无法自动解决的冲突的,这


图4.54 多人同时开发同一分支时push失败的解决方法

就需要我们手动来进行解决。根本问题在于,为什么会出现无法自动解决的冲突?这种情况绝大多数都是因为多人编辑了同一个文件,并在文件相同的位置上存在不同的内容,造成 Git无法决定舍谁留谁。这种情况,一般需要参与开发的工程师共同商量,以人工方式来解决冲突。

如果多人在同时设计一张电路原理图或者 PCB 版图,那是否可以合并呢?答案是否定的.因为 PCB 文件是二进制的.而非字符。对于二进制的合并,将毫无意义。

本章关于 Git 的介绍就到这里,希望大家早日上手。其实本文所讲的内容都是皮毛中的皮毛,Git 工具远比我们想象的要强大得多,GitHub 也远比我们想象的要浩瀚得多。关于更深层的应用,还要等着大家深入去研究发掘。

GitHub 是全世界程序员智的结晶,是一笔目的财富,是无数开源主义先驱努力奋斗的成果。在闭源软件圈地为王、Windows 等商业软件大行其道甚至垄断的历史背景下,开源者力排众议,自力更生,集结所有有生力量,共同构建了开源软件的庞大生态,这是伟大的,前无古人的!

向开源者致敬!!!

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

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

相关文章

StackExchange.Redis 高并发下timeout超时问题如何解决?

查看服务端程序负载还行,根据打印的连接看到一知半懂,按GitHub的issue提示,这2个Busy的数量不能比Min的大,即要提示Min的数值; 的各个字段: Timeout performing EXEC (1000ms): 表示在执行一个事务(MULTI..…

史上最强AI芯片!英伟达H200震撼来袭!141 GB 超大显存,Llama2推理性能翻倍,老黄赢麻了!

原创 作者 | 王二狗英伟达又一次打了所有人措手不及! 就在昨晚,老黄发布了新一代史上最强 AI芯片 NVIDIA HGX™ H200 。 141 GB 超大显存!带宽增加 2.4 倍 H200 拥有141GB 显存!相比之前的 H100和A100,容量几乎翻倍&…

css实现元素四周阴影

前言 首先确定的是需要使用box-shadow这一属性 语法如下: box-shadow: h-shadow v-shadow blur spread color inset; h-shadow:表示水平方向上的阴影偏移量,必须指明,可以是正数、负数、0,如果为正数左方有阴影&…

Cesium 展示——根据鼠标移动,线实体也跟着移动

文章目录 需求分析需求 如图所示,点击第一个点后鼠标移动,实现线实体跟着鼠标移动而移动 分析 创建初始化点实体和线实体更改线实体的坐标let centerPoint; // 用于存储圆心位置 let lineEntity;//存储绘制的线条 const that = this; this.handler

【工具使用】卸载VS(Visual Studio)

目录 方法一:使用TotalUninstaller工具方法二:官网的卸载方法 方法一:使用TotalUninstaller工具 下载地址:https://github.com/Microsoft/VisualStudioUninstaller/releases 1.点击下载地址,选择TotalUninstaller进行…

单独设置echarts图例样式

参考:echarts-legend legend: [{data: [{name: 正常,icon: rect}],itemWidth: 16,itemHeight: 4,top: 6%,left: 35%,textStyle: {color: #626C78,fontSize: 14}},{data: [{name: 异常,icon: rect}],itemWidth: 16,itemHeight: 4,top: 6%,left: 50%,textStyle: {col…

label

可以为input元素定义标注。点击label标签内文本时,浏览器自动将光标转到或选择对应表单元素上。 label中for属性应当与相关元素的id属性相同

传奇手游天花板赤月【盛世遮天】【可做底版】服务端+自主授权+详细教程

搭建资源下载地址:传奇手游天花板赤月【盛世遮天】【可做底版】服务端自主授权详细教程-海盗空间

WoShop多商户直播商城系统支持自营加多商户入驻

随着互联网的快速发展,直播电商已经成为一种新型的商业模式。越来越多的商家开始尝试通过直播商城来提高销售转化率。然而,很多商家在尝试的过程中发现,传统的直播商城系统无法满足他们的需求。他们需要一种更灵活、更具有营销功能的系统来支…

高并发架构设计(三大利器:缓存、限流和降级)

引言 高并发背景 互联网行业迅速发展,用户量剧增,系统面临巨大的并发请求压力。 软件系统有三个追求:高性能、高并发、高可用,俗称三高。三者既有区别也有联系,门门道道很多,全面讨论需要三天三夜&#…

nvm工具解决nodejs版本切换问题

常见版本问题 npm启动vite项目报错,信息如下 npm run dev> my-vue-app0.0.0 dev D:\data\code\document-assistant-web > vitefile:///D:/data/code/document-assistant-web/node_modules/vite/bin/vite.js:7await import(source-map-support).then((r) >…

2013年01月16日 Go生态洞察:并发不是并行

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

灯饰行业ERP有什么用?有哪些模块

在我们的生活当中会遇到各种类型的灯饰产品,这些商品有不同的设计特点和用料以及选型,并且在销售策略和价格策略等方面也比较灵活。 随着近些年灯饰行业同质化竞争愈演愈烈,国内很多的灯饰企业也遭遇较大的运营压力,尤其是采用传…

Jenkins 构建CICD

GitLab GitLab安装 https://gitlab.cn/install/?versionce CentOS 下安装 1. 安装和配置必须的依赖项 在 CentOS 7上,下面的命令也会在系统防火墙中打开 HTTP、HTTPS 和 SSH 访问。这是一个可选步骤,如果您打算仅从本地网络访问极狐GitLab&#xf…

C# 将PDF文档转换为Word文档

一.开发框架: .NetCore6.0 工具:Visual Studio 2022 二.思路: 1.使用SHA256Hash标识文档转换记录,数据库已经存在对应散列值,则直接返还已经转换过的文档 2.数据库没有对应散列值记录的话,则保存上传PDF…

Nginx 版本信息泄露解决方案

Nginx 【CVE-2021-23017;CVE-2022-41742】 【影响】 攻击者可能使用泄露的版本信息来确定该版本服务器有哪些安全漏洞,据此展开进一步的攻击。以下是百度的请求示例,也是有版本泄露: 【解决方案】 在Server节点增加以下配置: #…

一张图搞懂什么是BCD8421编码

如图所示 BCD8421编码的意义是 用四位二进制数表达一位的十进制数 因此十进制下的0~9在BCD8421编码下与其二进制表达是一样的 而多位的十进制数 比如说“10” 则需要将它拆分成两个单独的数“1”和“0” 分别用BCD8421编码表示这两个数 十进制“1” -> 0001 十进…

labview实现仪器的控制visa

*IDN? 是识别大多数仪器的查询指令。仪器会回应一个用于描述仪器的识别字符串。如果仪器不接受该指令,请在仪器手册中查询仪器能识别的指令列表。 如下图所示: 程序如下:

场景案例∣企业如何打造数智采购商城,赋能企业提速降本增效

从1998年第一个电商平台成立至今,已经有25年。 随着数字化经济加快发展,大数据、云计算、物联网及人工智能的进一步应用,近年来电商化采购模式也强势崛起,在企业采购领域掀起革命性的巨浪。 而随着市场需求的变化多样,…