git使用规范

合集下载

git、gerrit的使用方法和规范方案

git、gerrit的使用方法和规范方案

git、gerrit的使用方法和规范1、新员工git安装环境准备首先从服务器端ftp://192.168.31.10/Software/Tool/Git/(用户名/密码 paypalm/paypalms)获取软件Git-1.9.4-preview20140929 1、默认安装Git-1.9.4-preview20140929安装完成后打开git bash编辑器生成密钥对:ssh-keygen -t rsa 按三次回车键,默认生成路径如下图将生成的公钥内容在gerrit中进行添加(参考下文gerrit注册使用)每个人不同环境可以添加多个对应的公钥cat ~/.ssh/id_rsa.pub2、gerrit注册使用1、申请账号通过邮件向PPCM@发邮件申请,打开gerrit网站(http://192.168.31.10:8088),登录后在右上角进行setting设置2、公钥添加点击SSH Public Keys》Add Key选项进行公钥添加3、邮箱注册点击Register New Email 进行邮箱注册,注册后有邮件发送至你的邮箱点开链接重新登录3、gerrit主要功能介绍1、常规功能1、登录gerrit》ALL》open状态,此显示为已推送但还没有入库的所有patch,CR状态栏中绿色对勾代表已评审状态,可以根据计划入库2、gerrit》ALL》Merged状态表示所有已经进入项目库的patch3、提交patch后,开发人员可能觉得不太满意会选择放弃,gerrit》ALL》Abandoned 即为已放弃的patch,只有还没有入库的patch才能选择放弃,点击进入patch,橘黄色Abandon即为放弃选项,放弃后的patch依然可以进行还原,如以下操作橘黄色Restore为还原选项4、gerrit》Projects》List状态表示服务器端所有项目列表5、gerrit》People》List Groups状态表示所有组列表2、评审功能1、点击进入待评审的patch,点击add添加Reviews人员进行评审评审人员点击Reply进行评审打分,每一个需要入库的patch必须具备两分+2方可,1分表示自己同意,2分表示完全同意,负分表示不支持此代码入库2、gerrit》My》Changes状态为需要自己给别人进行评审的状态4、git命令使用1、账户名和邮箱设置查看1)、每一个工作环境首先配置在gerrit中注册的账户名和邮箱,请确保一致# git config --global “your-account”# git config --global user.email “your-email”# git config -l2、项目库clone根据gerrit项目列表,查看项目下载地址,选择clone with commit-msg hook&&ssh 选项,请确保正确方式进行项目库下载git clone ssh://your-accout@192.168.31.10:29418/Test3、提交注意事项每一个新clone的库第一次提交都需要执行以下步骤(下载服务端钩子到本地库,以便提交评审形成chang-id)scp -p -P 29418 your-account-name @192.168.31.10:hooks/commit-msg .git/hooks/git config remote.origin.push refs/heads/*:refs/for/*当执行完以上步骤,第一次git push依然会产生missing Change-Id错误,用git commit --amend命令把错误信息中的changed id进行添加,如下图本地工作库中,以最后一次成功push为节点,如果超过两条commit信息也会产生此错误合并多条commit为一条记录,可以用git reset 后跟要回退到最新push成功的版本号,整合多条记录为一条如产生uppack error和changed closed,建议保存工作库中修改文件,并进行强制回退、重新同步最新代码,以修复工作库index。

Git工作流程规范与多人协作实践

Git工作流程规范与多人协作实践

Git工作流程规范与多人协作实践一、引言Git是一种分布式版本控制系统,具有快速、安全、强大等优点。

而在多人协作环境下,如何规范Git的工作流程,是保证协作效率和代码质量的重要因素。

本篇文章将从规范Git工作流程和多人协作实践两个方面进行讲解。

二、Git工作流程规范1. 分支管理在Git中,常见的分支管理方式有以下几种:(1)集中式工作流在该工作流中,有一个主分支(master)作为代码的唯一来源,其它分支都基于此分支创建。

优点:简单、容易控制。

缺点:固定的流程容易出现合并冲突、开发效率较低。

(2)功能分支工作流在该工作流中,每个功能或Bug变更都会创建一个新分支,一旦开发完成,该分支会被合并到主分支中。

优点:团队成员可以在独立的分支中开发功能、提交、测试并发布。

缺点:需要更多的分支管理工作,需要更多的协作与沟通。

(3)GitFlow工作流该工作流将功能分支工作流与主分支结合起来,在开发和发布时更灵活。

优点:适用于大多数项目的复杂性和需求,较为适用。

缺点:需要更多的分支管理工作。

2. 提交信息规范为规范提交信息,有以下几点建议:(1)提交信息要简洁明了(2)首字母大写,末尾无标点符号(3)描述变更的类型(4)用一句话简单描述变更的原因3. 版本号规范版本号是软件的标识,Git使用的版本号有以下三个:(1)主版本号(major):当你进行大量的 API 修改时,主版本号加 1。

(2)次版本号(minor):当你添加新功能时,但是不破坏任何现有功能的兼容性时,次版本号加 1。

(3)修订号(patch):当你正在进行 Bug 修复时,修订号加1。

4. 代码审核规范代码审核可以有效提高代码质量,规范代码交付和合并流程。

在进行代码审核时,可以考虑以下几点:(1)指定负责人或团队(2)把代码库与编译、测试和构建脚本整合在一起(3)评估潜在的风险和安全问题(4)对代码进行审查、测试和复查三、多人协作实践在多人协作中,协作的质量和流程大大影响着项目的成功。

git、gerrit的使用方法和规范方案

git、gerrit的使用方法和规范方案

git、gerrit的使⽤⽅法和规范⽅案git、gerrit的使⽤⽅法和规范1、新员⼯git安装环境准备⾸先从服务器端ftp://192.168.31.10/Software/Tool/Git/(⽤户名/密码 paypalm/paypalms)获取软件Git-1.9.4-preview20140929 1、默认安装Git-1.9.4-preview20140929安装完成后打开git bash编辑器⽣成密钥对:ssh-keygen -t rsa 按三次回车键,默认⽣成路径如下图将⽣成的公钥内容在gerrit中进⾏添加(参考下⽂gerrit注册使⽤)每个⼈不同环境可以添加多个对应的公钥cat~/.ssh/id_rsa.pub2、gerrit注册使⽤1、申请账号通过邮件向PPCM@/doc/10fd88fb76232f60ddccda38376baf1ffd4fe36f.html 发邮件申请,打开gerrit⽹站(http://192.168.31.10:8088),登录后在右上⾓进⾏setting设置2、公钥添加点击SSH Public Keys》Add Key选项进⾏公钥添加3、邮箱注册点击Register New Email 进⾏邮箱注册,注册后有邮件发送⾄你的邮箱点开链接重新登录3、gerrit主要功能介绍1、常规功能1、登录gerrit》ALL》open状态,此显⽰为已推送但还没有⼊库的所有patch,CR状态栏中绿⾊对勾代表已评审状态,可以根据计划⼊库2、gerrit》ALL》Merged状态表⽰所有已经进⼊项⽬库的patch3、提交patch后,开发⼈员可能觉得不太满意会选择放弃,gerrit》ALL》Abandoned 即为已放弃的patch,只有还没有⼊库的patch才能选择放弃,点击进⼊patch,橘黄⾊Abandon即为放弃选项,放弃后的patch依然可以进⾏还原,如以下操作橘黄⾊Restore为还原选项4、gerrit》Projects》List状态表⽰服务器端所有项⽬列表5、gerrit》People》List Groups状态表⽰所有组列表2、评审功能1、点击进⼊待评审的patch,点击add添加Reviews⼈员进⾏评审评审⼈员点击Reply进⾏评审打分,每⼀个需要⼊库的patch必须具备两分+2⽅可,1分表⽰⾃⼰同意,2分表⽰完全同意,负分表⽰不⽀持此代码⼊库2、gerrit》My》Changes状态为需要⾃⼰给别⼈进⾏评审的状态4、git命令使⽤1、账户名和邮箱设置查看1)、每⼀个⼯作环境⾸先配置在gerrit中注册的账户名和邮箱,请确保⼀致# git config --global/doc/10fd88fb76232f60ddccda38376baf1ffd4fe36f.html “your-account”# git config --global user.email “your-email”# git config -l2、项⽬库clone根据gerrit项⽬列表,查看项⽬下载地址,选择clone with commit-msg hook&&ssh 选项,请确保正确⽅式进⾏项⽬库下载git clone ssh://your-accout@192.168.31.10:29418/Test3、提交注意事项每⼀个新clone的库第⼀次提交都需要执⾏以下步骤(下载服务端钩⼦到本地库,以便提交评审形成chang-id)scp -p -P 29418 your-account-name @192.168.31.10:hooks/commit-msg .git/hooks/git config remote.origin.push refs/heads/*:refs/for/*当执⾏完以上步骤,第⼀次git push依然会产⽣missing Change-Id错误,⽤git commit --amend命令把错误信息中的changed id进⾏添加,如下图本地⼯作库中,以最后⼀次成功push为节点,如果超过两条commit信息也会产⽣此错误合并多条commit为⼀条记录,可以⽤git reset 后跟要回退到最新push成功的版本号,整合多条记录为⼀条如产⽣uppack error和changed closed,建议保存⼯作库中修改⽂件,并进⾏强制回退、重新同步最新代码,以修复⼯作库index。

Git源代码管理规范

Git源代码管理规范

使用git 进行源代码管理,普通将某个项目的所有分支分为以下几条主线:Master顾名思义,既然名字叫 Master ,那末该分支就是主分支的意思。

master 分支永远是production-ready 的状态,即稳定可产品化发布的状态。

Develop这个分支就是我们寻常开辟的一个主要分支了,不管是要做新的 feature 还是需要做bug fix ,都是从这个分支分出来做。

在这个分支下主要负责记录开辟状态下相对稳定的版本,即完成为了某个 feature 或者修复了某个 bug 后的开辟稳定版本。

Feature branches这是由许多分别负责不同 feature 开辟的分支组成的一个分支系列。

new feature 主要就在这个分支系列下进行开辟。

当功能点开辟测试完毕之后,就会合并到 develop 分支去。

release branches这个分支系列从 develop 分支出来,也就是预发分支。

在预发状态下,我们往往会进行预发环境下的测试,如果浮现缺陷,那末就在该 release 分支下进行修复,修复完毕测试通过后,即分别并入 master 分支后 develop 分支,随后 master 分支做正常发布。

Hotfix branches这个分支系列也就是我们常说的紧急线上修复,当线上浮现 bug 且特殊紧急的时候,就可以从 master 拉出分支到这里进行修复,修复完成后分别并入 master 和 develop 分支。

下面这张图将完整展示这一个流程Git 的工作方式:也就是说,每次提交版本变动的时候,git 会保存一个快照(snapshot)。

如果文件没有被更改,git 也不会再次保存,而是提供一个到原来文件的链接。

这样一来,git 更像是一个小型的文件系统。

此外,( repository )是 Git 保存元数据和对象数据库的地方。

这也是 Git 最重要的部份。

(working directory )是项目某个版本的内容。

Git分支开发规范

Git分支开发规范

Git分⽀开发规范分⽀管理分⽀命名master 分⽀master 为主分⽀,也是⽤于部署⽣产环境的分⽀,确保master分⽀稳定性master 分⽀⼀般由develop以及hotfix分⽀合并,任何时间都不能直接修改代码develop 分⽀develop 为开发分⽀,始终保持最新完成以及bug修复后的代码⼀般开发的新功能时,feature分⽀都是基于develop分⽀下创建的feature 分⽀开发新功能时,以develop为基础创建feature分⽀分⽀命名: feature/ 开头的为特性分⽀,命名规则: feature/user_module、 feature/cart_modulerelease分⽀release 为预上线分⽀,发布提测阶段,会release分⽀代码为基准提测当有⼀组feature开发完成,⾸先会合并到develop分⽀,进⼊提测时,会创建release分⽀。

如果测试过程中若存在bug需要修复,则直接由开发者在release分⽀修复并提交。

当测试完成之后,合并release分⽀到master和develop分⽀,此时master为最新代码,⽤作上线。

复制代码hotfix 分⽀分⽀命名: hotfix/ 开头的为修复分⽀,它的命名规则与 feature 分⽀类似线上出现紧急问题时,需要及时修复,以master分⽀为基线,创建hotfix分⽀,修复完成后,需要合并到master分⽀和develop分⽀常见任务增加新功能(dev)$: git checkout -b feature/xxx # 从dev建⽴特性分⽀(feature/xxx)$: blabla # 开发(feature/xxx)$: git add xxx(feature/xxx)$: git commit -m 'commit comment'(dev)$: git merge feature/xxx --no-ff # 把特性分⽀合并到dev复制代码修复紧急bug(master)$: git checkout -b hotfix/xxx # 从master建⽴hotfix分⽀(hotfix/xxx)$: blabla # 开发(hotfix/xxx)$: git add xxx(hotfix/xxx)$: git commit -m 'commit comment'(master)$: git merge hotfix/xxx --no-ff # 把hotfix分⽀合并到master,并上线到⽣产环境(dev)$: git merge hotfix/xxx --no-ff # 把hotfix分⽀合并到dev,同步代码复制代码测试环境代码(release)$: git merge dev --no-ff # 把dev分⽀合并到release,然后在测试环境拉取并测试复制代码⽣产环境上线(master)$: git merge testing --no-ff # 把testing测试好的代码合并到master,运维⼈员操作(master)$: git tag -a v0.1 -m '部署包版本名' #给版本命名,打Tag复制代码⽇志规范在⼀个团队协作的项⽬中,开发⼈员需要经常提交⼀些代码去修复bug或者实现新的feature。

git使用及提交规范

git使用及提交规范

Git 版本控制Git中大部分操作都是针对本地文件和本地数据库,只有在我们平时执行类似克隆(clone)、pull、push等命令时才与远程服务器交互。

这样对于开发维护代码库就很安全,因为一旦远程服务器代码丢失仍然可以将本地代码上传到服务器;也会给开发者带来诸多方便,因为将远程代码取到本地后可以随意的修改,一旦修改混乱之后仍然可以恢复到以前版本,即使本地代码被误删除仍然可以重新从服务器取回代码。

下面将针对一些常用使用命令和技巧进行介绍:一、git提交规范在commit是,如果有对应PR,请在第一行写上PR号,然后再描述信息(另起行),并把涉及到改动的文件名附上.具体操作如下(不用git commit -m 填写说明):1、如果提交全部文件(请先git status确认是否要提交所有改动)1.1 git commit -a1.2 在打开的编辑器中(默认为VIM) 第一行填写PR号(顶格写,多个PR用逗号隔开,要写全),然后再写说明。

1.3 把涉及修改文件路径前的# 去掉,就会提交,不用手工输入文件路径。

1.4 然后ESC 输入:wq退出VIM.2、如果提交部分文件2.1 分别git add 要提交的所有文件。

2.2 git commit。

2.3 以后步骤同上。

二、第一次初始配置1、第一次取出代码到本地需要克隆代码(从服务器取代码到本地),一般如果新建一个本地代码库都需要重新克隆一次代码。

命令:git clone git://服务器代码库地址2、第一次使用git环境一般应该配置你的用户信息,这样会方便别人与自己查看git提交代码记录。

命令:$ git config --global zhangsan$ git config --global user.email *****************.cn这里使用的—global,以后的所有项目都默认使用这个配置,这时写入的是用户主目录的git配置文件(跟曲以鹏在邮件里边说的那个“.gitconfig”文件应该是一回事),如果想改变其中一个项目的配置可以去掉—global重新配置如:命令:$ git config lisi查看这些配置信息,如:命令:$ git config --list3、修改编辑器,一般我们在git commit(提交)后,需要添加PR号或者添加注释信息,对于编辑可以选用自己习惯的编辑器如:vi命令:$ git config --global core.editor vi三、提交代码(这部分只是针对本地代码库,所有操作都没有涉及服务器)1、提交代码过程大家都非常熟悉,平时常用几种命令,如:$ git add file –> $ git commit 或者全部提交:$ git commit –a当中可能经常使用如$ git status 查询状态、$ git diff 比较不同。

GIT版本库操作手册及管理规范

GIT版本库操作手册及管理规范

GIT版本库操作手册及管理规范FESCO Adecco公司内部自建系统GIT代码版本库操作手册及管理规范版本<1.0>文档版本历史【目录】1概述 (4)1.1编写目的 (4)1.2适用范围 (4)1.3名词解释 (4)2GIT操作使用说明 (5)2.1GIT工具的安装及权限开放申请 (5)2.2GIT工具的使用 (6)2.2.1从GIT导入项目 (6)2.2.2创建分支 (11)2.2.3代码提交 (12)2.2.4版本切换 (14)2.2.5代码同步 (14)2.2.6其他 (15)3GIT版本库管理规范 (15)4GIT版本结构图 (17)5GIT代码管理执行流程图 (18)1概述1.1 编写目的本文主要用于对公司内部自主研发的系统进行代码的版本管理,同时指导公司内部开发人员使用GIT工具进行统一的管理规范。

本文所形成的规范将作为IT部门开发的标准流程进行管控,不定时的进行线上环境的抽查,各项目架构师也应当以此文进行严格的版本管理及执行监督。

1.2 适用范围所有公司内部自主研发的项目。

1.3 名词解释UAT环境:用于用户做验收时进行测试的环境,其中数据均为线上生产数据的备份,在未约定与用户进行验收测试的情况下,不对业务部门开放。

测试环境:包含所有开发代码的环境,用于提供用户进行培训、演示等用途的临时环境,数据为加密及改版过的测试数据。

PRO分支:用于执行ANT脚本进行自动发布的GIT环境,此处的代码必须与生产环境完全保持一致。

UAT分支:用于保证系统的完整性,与PRO分支除数据库配置文件不同外,必须完全一致。

GIT分支:由开发工程师根据需求所建的分支,由开发工程师从本地GIT 资源库推送至公司统一的GIT版本资源库。

测试分支:由项目组自行定义的分支,用于管理测试环境的代码版本库,可根据业务部门的用户需求自行合并GIT分支进行打包整合,以提供给BU部门稳定的可用的测试环境。

2GIT操作使用说明2.1 GIT工具的安装及权限开放申请1.GTI插件在ECLIPSE软件的安装及引用:官网下载当前最新版的GIT插件,并放置于ECLIPSE项目插件结构下,ECLIPSE工具安装插件方法可参照官网上相应的教程:/egit/updates/2.配置SSH登陆口令:ECLIPSE程序中,Window->Preferences->输入SSH进行配置定位查询。

GIT库代码管理规范

GIT库代码管理规范

GIT库代码管理规范GIT库代码管理规范
⼀、规范要求
1、每个项⽬建⽴单独的GIT库。

每个GIT库包括两条线,命名规则如下:
开发线(测试):项⽬名称_DEV
⽣产线(正式):项⽬名称
2、每条线只允许增量不允许回滚;
3、每个开发⼈员拉各⾃的分⽀开发,合并前先获取DEV代码,再提交合并;
4、提交分⽀时注明:动作类型(新增、修改、删除)+改动明细;
5、从开发线合并到⽣产线,由测试⼯程师负责拉代码/标注更新内容;
6、由发布⼯程师将代码部署到服务器;
7、禁⽌开发⼈员访问⽣产线,⽣产线不对开发⼈员暴露;
8、版本号命名规则:xx.xx.xx (⼤版本.功能性扩展.bug修改)
9、禁⽌把⽆关⽂件上传到GIT库,如:框架⽂件等。

仅上传代码;
10、资源⽬录统⼀管理;。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

git使用规范
Git一个用于管理代码版本的开源分布式版本控制系统,可以在不同的计算机上同步工作。

Git被主要用于软件开发,它可以记录代码的每一次修改,方便回滚,另外也可以执行分支管理等功能,从而让开发者有更大的灵活性。

2. Git的安装
要使用Git,首先就需要将它安装到计算机中,这种安装方法可以分为两种:命令行安装和图形界面安装。

如果要通过命令行安装,可以使用一条命令来完成: sudo apt-get install git。

而对于图形界面安装,可以先下载Git图形界面安装包,进行双击安装。

3. Git的初始化
安装完Git后,为了更好地使用,还需要执行初始化操作,通过将Git的设置命令执行,就可以完成初始化操作。

首先要确认本地仓库的位置,将Git仓库的路径输入,然后就可以设置Git的用户名和密码,以及全局的配置信息,比如说邮件地址、用户名等等。

4. Git的基本命令
在完成安装和初始化操作后,就可以开始使用Git了,先从Git 的基本命令开始。

Git有三个重要的区域,分别是Git工作区、暂存区和本地仓库。

Git工作区是指使用者正在处理的目录,它可以用来存储用户编辑的文件;暂存区是用来暂时存放修改的文件;本地仓库是用来存储所有的版本控制数据,以及用户提交的文件。

常用的Git命令有:
- git init 始化一个Git仓库
- git status看Git仓库当前状态
- git add加文件到暂存区
- git commit暂存区的文件提交到本地仓库
- git push提交的文件同步到远程仓库
- git pull新远程仓库到本地仓库
5. Git分支管理
Git分支管理是Git中最重要的特性之一,它可以让开发者在不影响主分支的情况下,开发不同的功能,或在不同的时间点阶段保持版本的一致性。

一般的Git分支管理的步骤如下:
-建分支:git branch branch-name
-分支切换到当前工作目录:git checkout branch-name
-建或者更新文件
-文件添加到暂存区:git add file-name
-修改提交到本地仓库:git commit -mcommit message”
-修改提交到远程仓库:git push origin branch-name
6. Git的使用注意事项
使用Git同样有一些注意事项,遵守这些就可以更好的使用Git。

- 使用Git前要执行git status查看仓库的状态,以确认仓库无误。

- 使用git commit时,注意提交信息的准确性,它会记录在版
本控制中,方便将来的查询。

-次git commit前都要先git pull,以确保本地仓库和远程仓库的同步。

- 使用git branch时,注意在分支间切换时会存在分支被覆写的危险,以免造成意外损失。

7. Git的优势
Git有许多优势,使它迅速被软件开发者所采用:
-效:Git使用了一种特殊的校验码算法,它可以更快速地检查出文件的不同,并提供快速的校验功能。

- 便捷:Git可以实现分布式版本控制,可以在不同的本地仓库中同步代码,从而更快的完成开发。

-于使用:Git的命令非常有限,只要掌握几条命令就可以满足日常的开发需求,使用起来非常方便。

8.论
Git是当前最流行的代码管理工具,它在软件开发中提供了很多便捷,只要掌握几条基本的命令,就可以很方便地管理代码,从而提高开发效率。

因此,在使用Git之前,首先要熟悉Git的基本操作,并严格遵守Git的使用规范,从而让Git的使用更加顺利。

相关文档
最新文档