blog icon indicating copy to clipboard operation
blog copied to clipboard

gitlab changelog 10

Open yidinghan opened this issue 5 years ago • 0 comments

Article Reference Link

gitlab changelog 10.x

  • 10.0
    • New User Experience
    • Group Merge Requests Search and Filter Bar
    • New Predefined Variables for User Identity
  • 10.1
    • Image Discussions
    • Online View of HTML Artifacts
    • Lock Discussions
    • Semi-linear History and Fast-forward Merge Requests in CE
  • 10.3
    • Merge Request Commit Discussions
    • Customize branch name when creating merge request from issue
    • Flow charts, sequence diagrams, and Gantt diagrams in GitLab Flavored Markdown (GFM) with Mermaid
    • Strict check on artifacts dependencies
    • Restricted deletion of CI/CD job logs
  • 10.4
    • Clear the Runner cache
  • 10.5
    • Push to create a project
    • Color chips in GitLab Flavored Markdown
  • 10.6
    • Single Group Issue Board in Core and Free
    • Navigate to external issue tracker
  • 10.7
    • Web IDE is now open source
    • Deploy Tokens
    • Variables support in 'only' and 'except' keywords
    • GitLab Plugins
    • HTTP(s) Git protocol always available for CI/CD jobs
    • Easily get failure reasons for CI/CD jobs
    • Runner-specific job timeout
  • 10.8
    • Fuzzy file finder in the Web IDE
    • Stage and commit by file in the Web IDE
    • Specify variables for manual pipelines
    • GitLab Runners for groups

10.0

本版本的完整 release,请看这里

New User Experience

更优雅的可收缩侧边栏

10-0-menu-loop

可读性更高的内缩侧边栏预览

10-0-flyouts

更多关于该版本 UI 特点,请看这里

Group Merge Requests Search and Filter Bar

同一个群组内处理 MR,以往都要一个个项目切换,在管理的角度非常的不方便。

这个版本开始,便可以管理群组的级别全部 MR 了,节省很多项目切换成本。

10-0-group-level-merge-request

更多有关群组的操作,请看这里

New Predefined Variables for User Identity

name description example
GITLAB_USER_NAME 启动当前任务(job)的真实用户名 用户在系统里面设置的用户名
GITLAB_USER_LOGIN 启动当前任务(job)的用户的登录名 用户注册登陆用的用户名

更多 CI RUNNER 的预设变量,请看这里

10.1

本版本的完整 release,请看这里

Image Discussions

gitlab 不仅仅可以作为代码仓库,更广义的可以作为协作文件仓库。

以此推广开来,设计的图片等等也可以放到 git 中去分享沉淀。但是图片讨论,不像代码可以按行进行,直接的页面上执行 code review。

因而很多时候,讨论图片的修改都有过戳屏幕的冲动。毕竟平铺开来看,这是一个二维的物体。

但有了这一特性,就可以真的对一个图进行具体位置的 image review 啦。

10-1-image-discussions

发起方式也很简单,只要把鼠标移到图片上你想发起的讨论的位置,点击鼠标,输入内容,done!

10-1-start_image_discussion

更多 image review 的使用教程,请看这里

Online View of HTML Artifacts

前端页面的构建结果,单元测试的报告,等等过程在 gitlab ci 上都可以输出到 artifacts 中去。但想要查看输出文件,就必须下载,这略显麻烦。

有了这一特性,可以快速在线预览输出文件,跳过下载这一步,省时省事。

10-1-html_artifacts_browser

更多预览 Artifacts 的说明,请看这里

Lock Discussions

可以像 GitHub 一样,可以锁定讨论,使其不能再进行。

10-1-lock-discussions.jpg

更多文档说明,请看这里

Semi-linear History and Fast-forward Merge Requests in CE

两个有趣且进阶的 Git 操作,在 merge request 中的应用,有兴趣的可以点击 Semi-linear HistoryFast-forward 进行了解。

10.3

本版本的完整 release,请看这里

Merge Request Commit Discussions

通过 mr 我们可以看到代码的具体变更,照此也可方便全局性的进行 code review。

但并非每个人都会于在后 mr 的时候一次性进行 review,反而在每个 commit 下进行也会进行 code review。

有了这一特性,这些就可针对一个 mr 里的 commits 逐个 review 了。

官方有一个 video demo,感兴趣的可以看一下。

更多文档说明,请看这里

Customize branch name when creating merge request from issue

在创建 issue 之后的 detail page,有一个可以一键创建 mr 的按钮,非常的方便。

但是通过这个创建出来的分支名称格式,却是被固定死了,并不能改变。

通过这一特性,你可以自定义一键 mr 时创建的分支名称啦。

10-3-create_merge_request_customize_branch_name

更多文档说明,请看这里

Flow charts, sequence diagrams, and Gantt diagrams in GitLab Flavored Markdown (GFM) with Mermaid

就是流程图在 markdown 里面的支持,下面一张图直观的展示一下效果。

10-3-mermaid_gfm.png

更多文档说明,请看这里

Strict check on artifacts dependencies

因为你的成品也是会过期的啦,现在如果你的 job 依赖于某个成品,恰好那个成品又过期了,那你的任务就会因此失败。之前没报错,那是之前没有严格检查啦。

更多文档说明,请看这里

Restricted deletion of CI/CD job logs

其实 job 日志都是可被删除的,但是有些日志比较重要,如果被随意删除那是会对回溯审计照成麻烦。为此需要加强限制,只有本人触发的任务,或者是 master 能够删除相关日志记录。

更多文档说明,请看这里

10.4

本版本的完整 release,请看这里

Clear the Runner cache

出问题最简单的解决方案,重启啊!

如果你的 runner cache 除了冲突,或着别的问题。最简单的当然是删掉啦,反正是 cache。

10-4-clear-cache

更多文档说明,请看这里

10.5

本版本的完整 release,请看这里

Push to create a project

提交到一个不存在的项目会怎么样,现在你的行为结果就是创建一个啦。

这是最快的创建一个项目,特别是从一个本地模版项目开始,直接跳过 UI 上的初始化流程。

更多文档说明,请看这里

Color chips in GitLab Flavored Markdown

直接在 markdown 把颜色渲染出来,小优化带来的可不止小便利呀。

10-5-gfm-colors

更多文档说明,请看这里

10.6

本版本的完整 release,请看这里

Single Group Issue Board in Core and Free

跨项目管理 issue,那简直不要太方便,特别是在这微服务盛行的年份,项目数量如雨后春笋。

10-6-one-group-board-libre

更多文档说明,请看这里

Navigate to external issue tracker

如果网址好记,浏览器里面简单输入就可以联想回车直达。但是能直接点的,肯定比输入方便啊。

10-6-external-tracker-nav

更多文档说明,请看这里

10.7

本版本的完整 release,请看这里

Web IDE is now open source

进步是啥,是方便啊。能够直接在一个地方解决的操作,必然不会再想着花精力分两处做,这也是全家桶的魅力。

在 code review 的时候,常常看到一些简单的问题恨不得自己上手改。但是一想到,切分支,拉代码,开编辑器,修改变更,提交远端后。这时间都够煮包泡面啦。

点击界面上的 Web IDE 按钮,即刻享受一站式体验。

10-7-open_web_ide

10-7-web-ide-01

10-7-web-ide-02

更多文档说明,请看这里

Deploy Tokens

主要还是部署的场景,如果使用个人的验证信息去拉去项目,纵然方便,但是泄漏和被恶意不得不防啊。一个只读权限的验证信息,安全你我他。

10-7-deploy_tokens

更多文档说明,请看这里

Variables support in 'only' and 'except' keywords

更高级的参数,带来的就是更繁多的场景。作为开发,各种 if/else 不会陌生,而对于任一门语言更为一种基本语法。

官方的例子很易懂,当变量是 GITLAB_USER_NAME 特定用户才触发或不触发某个任务。例如发布的任务,可以设置为只有管理员才可以粗发这个任务。

更多预设的变量,可以看看这里,找找是否有你念念已久的呢。

10-7-variables_expressions

更多文档说明,请看这里

GitLab Plugins

这是 gitlab 的一小步,是 gitlab 生态系统的一大步(误)。开放 System hooks,也算了是为统一内外部入口,创造更丰富的外部生态打基础。

更多文档说明,请看这里

HTTP(s) Git protocol always available for CI/CD jobs

出于安全考虑,屏蔽 http git 操作是常见的场景。但是这也带来一个问题,那就是 gitlab ci 就不能用了。

为了解决这一问题,在作出严格的安全考虑和措施之后,无论 http git 操作与否,gitlab ci 都可以通过 http clone/fetch 到一个项目。

因为 gitlab ci 用的都是 otp(one time password),是无法被用于重放攻击的。

更多文档说明,请看这里

Easily get failure reasons for CI/CD jobs

通过 hover 就可以简单了解到任务失败的阶段。帮你快速定位,到底是准备工作(before script),还是进行中(script)等不同阶段出的问题。

10-7-failure_reason

更多文档说明,请看这里

Runner-specific job timeout

10.8

本版本的完整 release,请看这里

Fuzzy file finder in the Web IDE

在 vs code cmd + p 就是一个文件的查找功能,在 web IDE 也一样!相同的操作,帮助你快速打开当前项目中你想要的文件。

10-8-web_ide_fuzzy

更多文档说明,请看这里

Stage and commit by file in the Web IDE

改动全都 commit?不了不了.jpg

能够按需提交才是最好的,可以让你的 commit 的改动足够的小,信息的记录更加完整。

10-8-web_ide_staging

更多文档说明,请看这里

Specify variables for manual pipelines

在手动触发 pipelines 的时候,可以带上自定义的参数。这个功能对于 Jenkins 的用户而言可不陌生。

10-8-manual-pipeline-variables.png

更多文档说明,请看这里

GitLab Runners for groups

project runner 难分享,shared runner 太暴露。group runner 来帮你。

一个小组的人用同一个 runner,这种场景下放到多项目部门,那就显得相当方便啦。

省时省事不用重复 setup runner by project,安全可靠不必担心 shared runner leak secret。

10-8-group-runners.png

更多文档说明,请看这里

yidinghan avatar Nov 19 '18 17:11 yidinghan