Git版本控制工具使用说明和规范

嵌入式ARM 2022-08-15 12:00

本文介绍了windows环境下的Git版本控制工具的使用说明和规范。

目录:

1 Git的安装与使用

2 Git的使用规范

3 工欲善其事必先利其器

1、Git的安装与使用

1.1 前言

Git 是Linux 开源社区为Linux的开发与维护而开发的一个项目,目前已被广泛应用,关于版本控制工具各有特点,本部门全部使用git,软件开发前必须熟练掌握git的使用,以及遵守相应操作规范。

1.2 安装

初次接触Git的用户,请抽出几分钟时间看一下https://git-scm.com/docs 的介绍文档,相信磨刀不误砍柴工。

Git 地址:https://git-scm.com/downloads

服务器端已经安装在内网服务器,本文针对Window平台的Git客户端的安装和使用。

1、安装TortoiseGit-2.5.0.0-64bit.msi 一路下一步,这只是安装了git的内核功能,要在windows下操作,需要安装界面外壳。

2、安装GitExtensions-2.50.02-SetupComplete.msi 或者 Git-2.15.0-64-bit.exe,这是两种风格的界面,主体功能差不多,个人选择的是后者,也可以两个都安装。

3、安装过程中出现较多的配置,所有选项中,全部都选带windows关键字的,否则用起来看不出问题,但是保存的记录异常。既然是界面操作,就开启鼠标右键的快捷图标。

后续一些安装选项,全部选带windows关键字的。

4、安装完成后,鼠标右键,会出现 Git GUI Here。

5、如果是新手可安装汉化补丁TortoiseGit-LanguagePack-2.5.0.0-64bit-zh_CN.msi。

1.3 基础演示

1、配置

其中用户名必须使用自己名字的全拼,不要使用简写或者其他特殊字符,以方便后期检索跟踪修改记录。 

2、创建本地版本库,git creat repository here,默认操作,即可创建版本,会在test空文件夹下生成.git 。 

3、在test下随便改动,如新加123.txt,提交改动。此时鼠标右键效果如下:

4、编辑本次修改记录 修改记录必须简洁清晰,具体规范参考下一章。

5、保存本次修改后,使用Git GUI Here->Repository->Visualize master’s History查看全部版本记录。

6、提交到远程服务器

7、同步远程分支

有时候提示提交推送失败,先确定是否服务器有新节点,先同步、合并(rebase)后再提交。 

8、分支合并

一般选择rebase,但其实它有缺点。特别提醒,进行reabse前先将当前分支新加分支名,以防操作失败,节点错乱导致当前节点消失。合并后必须先编译验证了再提交。

9、通用配置和常用功能

1.4 总结

Git的使用尤其是多人合作,注意以下几点:

1、推送服务器前先同步; 

2、两个分支版本有冲突,先rebase解决,不熟练的情况下暂时不要使用merge; 

3、版本节点不能使用中文,修改描述可以,关于修改描述的规范见下一章; 

4、编译自动生成的临时文件不要提交,可以使用TortoiseGit–>Delete and add in ignore list,可过滤指定的文件,即使有改动也不提交;

5、Git自带的比较工具比较差,可以配置使用外部比较工具。

一共三处,将Diff viewer和Merge Tool改为HA-BCompare。

这个工具的比较功能强大,显示界面清晰。

2 Git的使用规范

1.1 用户名

为保证问题跟踪方便,历史修改记录溯源,首次提交前必须设置用户名和邮箱,尤其是用户名,必须使用自己名字的小写全拼,不得使用简称或者特殊代号。

1.2 分支名

  1. 功能接近的项目,尽量使用功能宏或者项目宏,从软件源码上减少分支;
  2. 分支名称使用大写字母和下划线,不能包含空格或中文;
  3. 临时测试或验证某个功能的分支,必须以TEST_开头,验证无误,且应用到正式项目后,最好删除远程分支;
  4. 某个版本基础上小改动,为解决生产或者客户问题的版本,必须以PATCH_开头,表示当前分支只是特殊情况下使用,后续正式版本不再继续维护升级;
  5. 因为需求变更,原XXX项目不得不分成2个分支,分支命名为XXX_AA和XXX_BB,其中AA和BB是两个分支的主要区别关键字,前面一样,表示两分支原属于同一个分支节点;若后续XXX_BB继续拆分,则新分支为XXX_BB_CC和XXX_BB_DD,依次类推;
  6. 禁止使用XXX1 XXX2 XXX3 这种分支名,禁止设分支名为master。
  7. 个人测试或者reabse前的远程分支,原作者确认已经不再需要的,必须删除远程分支,简化版本分支树形结构。

1.3 注释

修改记录规范化是本文的重点,注释按如下格式编写:

[type] message

每行内容不超过50字, type 用于指定提交的 commit 的类别,只允许以下几个动词原语:

release 发布软件时使必须有,且在第一行,后面内容是版本号

add  新增加的功能 

fix  修复某个 bug 的描述 

update  升级完善原有的基础功能上 

change 需求变更或者实现的方案改变 

docs  更新文档 

test  增加/修改测试示例代码 

merge/rebase在解决代码冲突,合并分支时使用 

create  初次创建新项目时使用 

remove  删减代码时使用 

patch 集成合并SDK补丁

message 用于指定提交的描述文字,需要注意几个事项。

1、使用中文表述,描述简洁,抓住重点,尤其对修复的问题点 

2、尽量以动词开头,如:更新,增加,修复等 

3、特别复杂的功能或流程,可描述参考某文档,并更新上传说明文档,

正确的示例:

[release] 发布V1.0.0_2021 

[fix] 修复登录框显示阴影的问题 

[update] 优化RFID卡信息读取的驱动

[test] 添加解码GNSS测试功能 

[remove] 删除多余的提示框界面相关代码

错误的示例:

[fix] 修复一个大 BUG       //具体是什么问题? 

添加联网模块                  //没有 type [add] 

[add] 更新 API 文档接口说明    // type错误,应该是[doc] 

[release] V1.0_20210220   // release必须在第一行

3、工欲善其事必先利其器

工欲善其事必先利其器,工具的熟练掌握、合理利用,修改记录保存完整,后期检索跟踪问题,以及多项目软件切换合并才能简单易操作,才能保证代码的质量。

END

来源:嵌入式系统

版权归原作者所有,如有侵权,请联系删除。

推荐阅读
让人眼前一亮的Linux终端工具!
CPU明明8个核,网卡为什么拼命折腾一号核?
为什么中国的数字是四位一进,西方的是三位一进?

→点关注,不迷路←
嵌入式ARM 关注这个时代最火的嵌入式ARM,你想知道的都在这里。
评论
  • 在当前人工智能(AI)与物联网(IoT)的快速发展趋势下,各行各业的数字转型与自动化进程正以惊人的速度持续进行。如今企业在设计与营运技术系统时所面临的挑战不仅是技术本身,更包含硬件设施、第三方软件及配件等复杂的外部因素。然而这些系统往往讲究更精密的设计与高稳定性,哪怕是任何一个小小的问题,都可能对整体业务运作造成严重影响。 POS应用环境与客户需求以本次分享的客户个案为例,该客户是一家全球领先的信息技术服务与数字解决方案提供商,遭遇到一个由他们所开发的POS机(Point of Sal
    百佳泰测试实验室 2025-01-09 17:35 59浏览
  • 一个真正的质量工程师(QE)必须将一件产品设计的“意图”与系统的可制造性、可服务性以及资源在现实中实现设计和产品的能力结合起来。所以,可以说,这确实是一种工程学科。我们常开玩笑说,质量工程师是工程领域里的「侦探」、「警察」或「律师」,守护神是"墨菲”,信奉的哲学就是「墨菲定律」。(注:墨菲定律是一种启发性原则,常被表述为:任何可能出错的事情最终都会出错。)做质量工程师的,有时会不受欢迎,也会被忽视,甚至可能遭遇主动或被动的阻碍,而一旦出了问题,责任往往就落在质量工程师的头上。虽然质量工程师并不负
    优思学院 2025-01-09 11:48 82浏览
  • 故障现象一辆2017款东风风神AX7车,搭载DFMA14T发动机,累计行驶里程约为13.7万km。该车冷起动后怠速运转正常,热机后怠速运转不稳,组合仪表上的发动机转速表指针上下轻微抖动。 故障诊断 用故障检测仪检测,发动机控制单元中无故障代码存储;读取发动机数据流,发现进气歧管绝对压力波动明显,有时能达到69 kPa,明显偏高,推断可能的原因有:进气系统漏气;进气歧管绝对压力传感器信号失真;发动机机械故障。首先从节气门处打烟雾,没有发现进气管周围有漏气的地方;接着拔下进气管上的两个真空
    虹科Pico汽车示波器 2025-01-08 16:51 107浏览
  • 「他明明跟我同梯进来,为什么就是升得比我快?」许多人都有这样的疑问:明明就战绩也不比隔壁同事差,升迁之路却比别人苦。其实,之间的差异就在于「领导力」。並非必须当管理者才需要「领导力」,而是散发领导力特质的人,才更容易被晓明。许多领导力和特质,都可以通过努力和学习获得,因此就算不是天生的领导者,也能成为一个具备领导魅力的人,进而被老板看见,向你伸出升迁的橘子枝。领导力是什么?领导力是一种能力或特质,甚至可以说是一种「影响力」。好的领导者通常具备影响和鼓励他人的能力,并导引他们朝着共同的目标和愿景前
    优思学院 2025-01-08 14:54 93浏览
  • 在智能网联汽车中,各种通信技术如2G/3G/4G/5G、GNSS(全球导航卫星系统)、V2X(车联网通信)等在行业内被广泛使用。这些技术让汽车能够实现紧急呼叫、在线娱乐、导航等多种功能。EMC测试就是为了确保在复杂电磁环境下,汽车的通信系统仍然可以正常工作,保护驾乘者的安全。参考《QCT-基于LTE-V2X直连通信的车载信息交互系统技术要求及试验方法-1》标准10.5电磁兼容试验方法,下面将会从整车功能层面为大家解读V2X整车电磁兼容试验的过程。测试过程揭秘1. 设备准备为了进行电磁兼容试验,技
    北汇信息 2025-01-09 11:24 69浏览
  • 本文介绍编译Android13 ROOT权限固件的方法,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。关闭selinux修改此文件("+"号为修改内容)device/rockchip/common/BoardConfig.mkBOARD_BOOT_HEADER_VERSION ?= 2BOARD_MKBOOTIMG_ARGS :=BOARD_PREBUILT_DTB
    Industio_触觉智能 2025-01-08 00:06 111浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2025-01-09 09:58 43浏览
  • 职场是人生的重要战场,既是谋生之地,也是实现个人价值的平台。然而,有些思维方式却会悄无声息地拖住你的后腿,让你原地踏步甚至退步。今天,我们就来聊聊职场中最忌讳的五种思维方式,看看自己有没有中招。1. 固步自封的思维在职场中,最可怕的事情莫过于自满于现状,拒绝学习和改变。世界在不断变化,行业的趋势、技术的革新都在要求我们与时俱进。如果你总觉得自己的方法最优,或者害怕尝试新事物,那就很容易被淘汰。与其等待机会找上门,不如主动出击,保持学习和探索的心态。加入优思学院,可以帮助你快速提升自己,与行业前沿
    优思学院 2025-01-09 15:48 53浏览
  • 在过去十年中,自动驾驶和高级驾驶辅助系统(AD/ADAS)软件与硬件的快速发展对多传感器数据采集的设计需求提出了更高的要求。然而,目前仍缺乏能够高质量集成多传感器数据采集的解决方案。康谋ADTF正是应运而生,它提供了一个广受认可和广泛引用的软件框架,包含模块化的标准化应用程序和工具,旨在为ADAS功能的开发提供一站式体验。一、ADTF的关键之处!无论是奥迪、大众、宝马还是梅赛德斯-奔驰:他们都依赖我们不断发展的ADTF来开发智能驾驶辅助解决方案,直至实现自动驾驶的目标。从新功能的最初构思到批量生
    康谋 2025-01-09 10:04 59浏览
  • HDMI 2.2 规格将至,开启视听新境界2025年1月6日,HDMI Forum, Inc. 宣布即将发布HDMI规范2.2版本。新HDMI规范为规模庞大的 HDMI 生态系统带来更多选择,为创建、分发和体验理想的终端用户效果提供更先进的解决方案。新技术为电视、电影和游戏工作室等内容制作商在当前和未来提供更高质量的选择,同时实现多种分发平台。96Gbps的更高带宽和新一代 HDMI 固定比率速率传输(Fixed Rate Link)技术为各种设备应用提供更优质的音频和视频。终端用户显示器能以最
    百佳泰测试实验室 2025-01-09 17:33 60浏览
  • 根据环洋市场咨询(Global Info Research)项目团队最新调研,预计2030年全球中空长航时无人机产值达到9009百万美元,2024-2030年期间年复合增长率CAGR为8.0%。 环洋市场咨询机构出版了的【全球中空长航时无人机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球中空长航时无人机总体规模,包括产量、产值、消费量、主要生产地区、主要生产商及市场份额,同时分析中空长航时无人机市场主要驱动因素、阻碍因素、市场机遇、挑战、新产品发布等。报告从中空长航时
    GIRtina 2025-01-09 10:35 60浏览
  • 1月7日-10日,2025年国际消费电子产品展览会(CES 2025)盛大举行,广和通发布Fibocom AI Stack,赋智千行百业端侧应用。Fibocom AI Stack提供集高性能模组、AI工具链、高性能推理引擎、海量模型、支持与服务一体化的端侧AI解决方案,帮助智能设备快速实现AI能力商用。为适应不同端侧场景的应用,AI Stack具备海量端侧AI模型及行业端侧模型,基于不同等级算力的芯片平台或模组,Fibocom AI Stack可将TensorFlow、PyTorch、ONNX、
    物吾悟小通 2025-01-08 18:17 53浏览
  •  在全球能源结构加速向清洁、可再生方向转型的今天,风力发电作为一种绿色能源,已成为各国新能源发展的重要组成部分。然而,风力发电系统在复杂的环境中长时间运行,对系统的安全性、稳定性和抗干扰能力提出了极高要求。光耦(光电耦合器)作为一种电气隔离与信号传输器件,凭借其优秀的隔离保护性能和信号传输能力,已成为风力发电系统中不可或缺的关键组件。 风力发电系统对隔离与控制的需求风力发电系统中,包括发电机、变流器、变压器和控制系统等多个部分,通常工作在高压、大功率的环境中。光耦在这里扮演了
    晶台光耦 2025-01-08 16:03 84浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦