Phabricator/Project Management Concise Tutorial

From MIT Technology Roadmapping
Jump to navigation Jump to search

This page is copied from http://toyhouse.cc:81/index.php/Phabricator/Project_Management%E7%AE%80%E6%98%8E%E6%95%99%E7%A8%8B, Installing chrome's translation plugin will be very useful.

Phabricator/Project management简介

Phabricator是一个开源Web应用程序集成平台,常用于敏捷开发的项目管理,其中主要包括代码管理、Bug追踪、项目管理、工作板、wiki等诸多功能。我们需要使用的是其中的Project Management功能。Phabricator是基于php的,这与toyhouse studio上的MediaWiki是相同的(虽然似乎并没有说明影响)

Phabricator/Project Management尤其适合在团队内进行任务分配、问题反馈与提问交流。我们课上需要使用的Phabricator中,老师已经为所有同学创建了账号,因此可以充分利用这一平台进行任务的分发和管理。

界面介绍

首先进入Phabricator主页,在最上方的状态栏中可以查看当前的消息提醒、用户信息(或修改用户档案)、一些快捷操作(常用的创建任务/工程/仓库)以及搜索栏。

File:2016011501WK6-1-状态栏.png

左侧菜单栏中列出了所有可以使用的功能。从上到下依次是

File:2016011501WK6-2-菜单栏.png

  • Differential,主要是创建code review,后期可以用来审阅其他成员的工作(是Pre-commit Review)
  • Maniphest,包括Tasks and Bugs,可以列出自己需要完成的任务以及需要解决的Bug,是最常用的功能
  • Diffusion,管理仓库,类似Github。只有管理员才有权限操作,因此我们还是使用Github吧。
  • Audit,审阅工作,与Differential不同的是它是Post-commit Review,打开后会显示被分配给自己的Review工作。
  • Phriction,文档的编写,和wiki是一样的。
  • Projects,创建和管理工程,组长需要完成这项工作。
  • Dashboard,供个人使用,相当于自由度很大的记事本,可以进行一些记录,也会自动显示目前需要完成的工作、最近的commits等信息。
  • More Applications,显示了Phabricator丰富的功能插件,欢迎大家自主挖掘。
  • Edit Menu,可以将一些现有的项(例如Dashboard、标签等)以及一些布局元素(例如分隔线)加入到左侧的菜单栏里

右侧栏目则是最近的活动,可以从中看到进来的Task,可以看到整个班级的Task分布以及各个Task的描述:

File:右侧日程、活动.PNG

创建和管理任务

进入Maniphest界面,点击右上角的Create Task,即可进入创建任务的界面。

在创建界面,可以指定任务的名称、描述,并将它分配给特定的成员(班里所有同学都可以在列表里找到),设置状态(已发布/已解决/无效等等),优先级,谁可以看到、谁可以编辑,并在Tag栏中可以指定它属于哪一个项目(Project)、以及谁没有被分配任务但会收到提示(Subscribers)。

例如,创建一个任务并分配给自己,完成后会出现如下界面:

File:2016011501WK6-3-任务分配.png

点击链接进入任务的界面,下方会出现带菜单的文本框,在文本框中可以写文字来描述任务的进度、自己的想法等用于实时跟进任务,而菜单栏则提供了改变任务状态(例如做完后要把Status改成Resolved)、改变优先级等功能,如下图所示。

File:2016011501WK6-4-编辑任务状态.png

创建和管理工程

进入Projects界面,点击右上角的Create Project,即可进入创建功能界面。在此界面,可以设定工程的名称、描述文字、图标等等信息,与创建任务类似。

完成创建工程后,进入管理该工程的界面,可以看到左侧在图标下方有个菜单栏,其中包含内容

  • <工程名>,显示了这个工程的信息,例如工程名称、状态、描述、最近的活动等,相当于一个主页,它提供了全面而简略的信息
  • Workboard,用来管理工程内的任务,在里面可以创建任务(与上面提到的创建任务界面相同,只是最后的Tag被自动指定了属于这个工程)和管理任务。Workboard的首页会自动分列列出工程内所有的任务。常见的分列方式为TODO,DOING,DONE。
  • Members,可以查看加入这个工程的人(Members)和围观的人(Watchers)
  • Subprojects,可以创建Subprojects(与这个工程关联的子工程,会自动加入本工程的所有成员)和Milestones(显示这个工程的进度等信息)
  • Manage,用于管理这个工程,可以修改工程信息、菜单、图片等等信息。另外,在这个界面中会显示Hashtags,例如"#MyProject",它是属于这个工程的标签,在创建工程的界面会有Additional Hashtags,则会添加额外的标签。

Workboard是一个Project的核心,它是工程中所有任务的集散地,合理安排的任务和精心布置的Workboard有助于信息的传达和提高时间安排效率。

Workboard中的任务是以标签的形式出现的,可以被整理成非常丰富的外观风格,例如使用编辑外观的代码以及Stylish等工具,详见Phabricator/Project_management官方教程

指派/接收一个任务

指派Task

通过创建Task可以指派项目并且指定相应的人进行完成 可以通过assign选项进行指定接收人,其余部分跟前面的类似,故不赘述。

接收Task & 回复Task

  • 对应的成员将会在 左上方 收到消息提醒,其中包含发布任务的人、任务发布时间、任务发布优先级

File:Receiver.PNG

  • 点击该消息框,显示进入相应的回复界面:

File:得到的结果.PNG

  • 任务完成之后,可以通过 Add action->Change status->resolved 表示任务已经完成

并且在下方可以添加相对应的注释,而后点击 sail for adventure,即可更改相应的任务信息,将Task的状态进行发表

File:Answer.PNG

  • 其他功能

在任务回复界面的右侧,有如下的功能:

File:功能menu.PNG

    • 前三项为对这个公开的任务进行edit
    • Mute notification则是将这个任务屏蔽静音(不推荐使用)
    • Award Token 是对任务发布人的一个直观明了的回馈
    • Flag for Later 则是对这个任务进行标记,方便自己回溯这个任务,安排后续时间进行处理


  • 其他的其他

对这部分有疑问的话欢迎联系我,大家可以多加尝试并且对这部分的使用进行回馈,探索新的功能。 by:2017011207 (talk) 16:20, 30 October 2018 (UTC)

其他

以上就是(我认为的)我们课程中合作所需要的基本功能了,当然Phabricator作为一个具有极大自由度的开源平台还有很多其他功能可供挖掘。如果觉得本教程中有错误、有遗漏,或是觉得需要添加其他所需内容的,欢迎自由编辑以及联系我。 2016011501 (talk) 13:22, 29 October 2018 (UTC)