插件篇--git

插件篇--git

Git 是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

安装

官网:https://git-scm.com/

指令常用表

 

插件篇--git_第1张图片

 

基础

 

用户信息

$ git config --global user.name "John Doe"

$ git config --global user.email [email protected]

查看配置信息

$ git config --list

在工作目录中初始化新仓库

$ git init

从现有仓库克隆

$ git clone [url]

克隆多个项目

$ git remote -v

origin  url-1

origin url-2

origin url-3

从仓库更新数据

$ git pull

上传更新数据

$ git push

推送制定仓库

$ git push [remote-name] [branch-name]

远程仓库的删除和重命名

$ git remote rename oldname  newname

列显已有的标签(版本迭代)

$ git tag

git show [tag]}

Git 查看提交历史

$ git log

修改最后一次提交

$ git commit --amend

取消已经暂存的文件

$ git add .

$ git status

$ git reset HEAD 

$ git status

分支

角色与项目角色对应关系

 

GitLab角色

项目角色

Owner(拥有者)

Git管理员

Master(管理员)

开发主管、项目主管等

Developer(开发者)

开发人员

Reporter(报告者)

测试人员、产品经理等

Guest(访客)

其它人员

 

如果整个项目就你一个人,那么你就身兼Owner,Master,Develop三个角色。又或者团队里并没有专职的Git管理员,那么开发主管或项目经理就集Owner和Master两个个角色于一身。划分角色的本意是为了减少代码管理、研发、测试、发版、回滚等问题。切不要因为术语本身和组织里面人员的对应对流程造成误解,进而影响效率。

插件篇--git_第2张图片

 

master和develop是仓库中长期稳定存在的分支。feature、release、hotfix分支是临时分支,用完后应删除。

1.master

master分支(主分支)面向生产环境,永远处在即将发布(production-ready)状态,该分支没有任何已知的问题。。禁止直接在master分支做任何修改和开发。只能从release和hotfix分支合并通过测试的代码。

2.develop

develop分支(开发分支)面向开发环境。是日常开发的分支。此分支代表目前开发进度。

3.feature

开发新功能时,为保证develop分支的相对稳定,需要从develop分⽀拉出feature分支(特性分支)。开发完成后,需要再合并入develop分支。

命名规则:feature-日期-关键字。例如:feature-20170531-perf-and-refactor-code-style)

时间使用年月日进行命名,不足2位补0,关键字全部小写,单词以“-”分隔

4.release面向测试环境

release分支(预发布分支)面向测试环境。预发布分⽀是指在发布正式版本之前(即合并到master分⽀之前),从develop分支拉出来的一个分支。预发布结束以后,必须合并进develop和master分⽀。本质上,release分支是develop分支的一个冻结副本,release拉出来的时候就意味着要发布的需求已经冻结,在release上唯一可以继续做的改动只有这些需求的bug修复。release分支拉出后,在develop分支上可以继续做新功能开发,这样新功能开发和版本测试发布可以并行。

命名规则:release-日期-版本,例如:release-20170508-v1.0.0

时间使用年月日进行命名,不足2位补0,关键字全部小写,单词以“-”分隔

5.hotfix修改bug

软件正式发布以后,难免会出现bug。这时就需要创建⼀个分⽀,进⾏bug修补。Hotfix分支(热修复分支)是从master分⽀上指定的tag版本拉出来的。Bug修复后,需要再合并进master和develop分支。

命名规则:hotfix-日期-版本,例如:hotfix-20170508-v1.0.1

时间使用年月日进行命名,不足2位补0,关键字全部小写,单词以“-”分隔

 

指令

新建一个新分支

$ git branch newBranch

切换分支至新分支

$ git checkout newBranch

合并分支

$ git checkout master

$ git merge hotfix

当前所有分支的清单

$ git branch

查看各个分支最后一个提交对象的信息

$git branch -v

查看哪些分支已被并入当前分支

$git branch --merged

查看尚未合并的工作

$ git branch --no-merged

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(插件)