Upsource功能介绍
简介
Upsource作为Jetbrains公司出品的一款Code Review
工具,通过与版本管理软件( Git、 Mercurial、 Subversion 和 Perforce)结合,以社交化的形式,将代码予以团队成员或其他人分享、讨论。
主要功能
便捷的查看自己的项目
Upsource主要基于版本管理软件,因此,只要项目已经交给Upsource管理,你就可以方便的看到你所参与的项目,以及最近相关的Feeds。
不同的Review角色
在Upsource之中,针对一次review
分为了3个不同的角色,Author
、Reviewer
、Watcher
其中Author
在创建本次Review时,Upsource会自动根据代码的提交来判断,因此不可修改.
Reviewer:主要负责审核代码作者对该份代码的修改并留下反馈,他可以随时在该次review中讨论并留下意见,也可以关闭这次review。
Watcher:watcher不太需要去关心代码的细节修改,关注重点是项目的状态以及团队成员的讨论。
如上图所示,作为review的发起者,你可以点击+
邀请团队成员或者其他人作为reviewer
或者watcher
,同时,你可以将鼠标放在头像之上
,看到该成员本次review的进度,如下所示
简单方便的Review视图
以Idea、Webstorm、Pycharm闻名的Jetbrains公司,对于代码的展现方示方式自然得心应手,无论是python、c++、c#、Java、Javascript都可以很好的在浏览器中展现,甚至React、Vue这样的DSL,也能正常的展示出来
社交化的Review形式
在review中,如果您发现某一行代码实现有问题,你可以随时在该行加上注解,并@
相关开发同学,当他做出合理的解释或者修改后,您就可以标记这行已经解决过了,已方便减少不必要的重复review
Jetbrains插件集成
如果你不喜欢在浏览器上做Review,同时正巧你又使用的是Jetbrains旗下的软件进行开发任务,那么你可以天然的将Upsource通过插件的形式集成在你的IDE上
详细说明可以在官方文档上查到,这里就不在展开:https://www.jetbrains.com/help/upsource/installing-plugin.html
基于Upsource的CR实践
通过这段时间对Upsource的使用,我们可以通过创建Branch Review,来对一个迭代的代码进行Review,一个加上Review的开发流程如下所示。
创建项目
如果登录Upsource后,发现没有你自己的项目,那么,你需要自行将项目创建出来。
-
点击首页右上角的设置按钮
-
点击
Create Project
-
输入
项目名字
、仓库地址
、仓库校验
方式等相关信息
点击
Create Project
即可
这时,便可以看到项目已经正在导入之中,待项目导入成功,就可以开始创建一Review
基于Branch创建Review
-
进入项目之后,点击
Branch
-
点击本次迭代需要Review分支(如Review的基础分支不是Master,需要自己点击Change default branch来替换,已便能正常识别修改内容)
-
点击
Create Branch Review
即可
这时候便可以在右侧面板上看到本次修改文件的变化,然后自行把
Reviewer
以及Watcher
拉进Review
中即可
开始Review
-
对有疑问的代码位置,可以点击左侧的
红笔
,填写你的意见或者疑问并@
者或者团队其他成员
-
当团队成员作出合理解释或者修改后,可以点击
Resolve
来标明这个疑问已经作出回答
完成Review
当reviewer
对该次review已经没有疑问了,可以通过 Accept
或者raise concern
来告知review发起人,你对这次review的结果,review发起人,也可以通过看Reviewer头像的方式,快速了解到Reviewer对该次review的观点
关闭Review
- 当迭代即将上线,所有的文件以及提出疑问都得到了
Review
或者解答
,那么,我们需要将这次Review关闭,点击Close review
即可 【该操作一般为review发起人发起,如果该修改已上线,请记得关闭,以免对reviewer造成影响】
其他
如果说,普通的Branch Review
可能并不能很好的满足本次迭代的需求,我们也可以将某次提交,绑定到已经创建好的Review。
- 点击想要Review的提交,进入页面后右上角点击
Review change
后点击Attach to review
,随后选中已经创建好的Review,这样,就可以将某一些提交附着于你创建好的Review上了
总结
Upsource是一个比较偏向社交化的CR工具,可以充分利用开发的碎片时间进行,如果您的团队既想保证CR覆盖率,又不希望阻塞项目,那么可以考虑使用该工具来完成CR。
如果该文能够帮您解决问题,欢迎点赞
,您的赞是我更新的最大动力,谢谢