Changeset View
Changeset View
Standalone View
Standalone View
src/docs/user/userguide/projects.diviner
@title Projects User Guide | @title Projects User Guide | ||||
@group userguide | @group userguide | ||||
Organize users and objects with projects. | Organize users and objects with projects. | ||||
Overview | Overview | ||||
======== | ======== | ||||
NOTE: This document is only partially complete. | NOTE: This document is only partially complete. | ||||
Phabricator projects are flexible, general-purpose groups of objects that you | Phorge projects are flexible, general-purpose groups of objects that you | ||||
can use to organize information. Projects have some basic information like | can use to organize information. Projects have some basic information like | ||||
a name and an icon, and may optionally have members. | a name and an icon, and may optionally have members. | ||||
For example, you can create projects to provide: | For example, you can create projects to provide: | ||||
- **Organization**: Create a project to represent a product or initiative, | - **Organization**: Create a project to represent a product or initiative, | ||||
then use it to organize related work. | then use it to organize related work. | ||||
- **Groups**: Create a project to represent a group of people (like a team), | - **Groups**: Create a project to represent a group of people (like a team), | ||||
Show All 12 Lines | |||||
projects to an object never affects who can see the object**. | projects to an object never affects who can see the object**. | ||||
For example, if you tag a task with a project like {nav Backend}, that does not | For example, if you tag a task with a project like {nav Backend}, that does not | ||||
change who can see the task. In particular, it does not limit visibility to | change who can see the task. In particular, it does not limit visibility to | ||||
only members of the "Backend" project, nor does it allow them to see it if they | only members of the "Backend" project, nor does it allow them to see it if they | ||||
otherwise could not. Likewise, removing projects does not affect visibility. | otherwise could not. Likewise, removing projects does not affect visibility. | ||||
If you're familiar with other software that works differently, this may be | If you're familiar with other software that works differently, this may be | ||||
unexpected, but the rule in Phabricator is simple: **adding and removing | unexpected, but the rule in Phorge is simple: **adding and removing | ||||
projects never affects policies.** | projects never affects policies.** | ||||
Note that you //can// write policy rules which restrict capabilities to members | Note that you //can// write policy rules which restrict capabilities to members | ||||
of a specific project or set of projects, but you do this by editing an | of a specific project or set of projects, but you do this by editing an | ||||
object's policies and adding rules based on project membership, not by tagging | object's policies and adding rules based on project membership, not by tagging | ||||
or untagging the object with projects. | or untagging the object with projects. | ||||
To manage who can seen an object, use the object's policy controls, | To manage who can seen an object, use the object's policy controls, | ||||
▲ Show 20 Lines • Show All 70 Lines • ▼ Show 20 Lines | |||||
For information on customizing and prefilling forms, see | For information on customizing and prefilling forms, see | ||||
@{article:User Guide: Customizing Forms}. | @{article:User Guide: Customizing Forms}. | ||||
**Link to Wiki Pages**: You can add links to relevant wiki pages or other | **Link to Wiki Pages**: You can add links to relevant wiki pages or other | ||||
documentation to the menu to make it easy to find and access. You could also | documentation to the menu to make it easy to find and access. You could also | ||||
link to a Conpherence if you have a chatroom for a project. | link to a Conpherence if you have a chatroom for a project. | ||||
**Link to External Resources**: You can link to external resources outside | **Link to External Resources**: You can link to external resources outside | ||||
of Phabricator if you have other pages which are relevant to a project. | of Phorge if you have other pages which are relevant to a project. | ||||
**Set Workboard as Default**: For projects that are mostly used to organize | **Set Workboard as Default**: For projects that are mostly used to organize | ||||
tasks, change the default item to the workboard instead of the profile to get | tasks, change the default item to the workboard instead of the profile to get | ||||
to the workboard view more easily. | to the workboard view more easily. | ||||
**Hide Unused Items**: If you have a project which you don't expect to have | **Hide Unused Items**: If you have a project which you don't expect to have | ||||
members or won't have a workboard, you can hide these items to streamline the | members or won't have a workboard, you can hide these items to streamline the | ||||
menu. | menu. | ||||
▲ Show 20 Lines • Show All 137 Lines • ▼ Show 20 Lines | |||||
Policies In Depth | Policies In Depth | ||||
================= | ================= | ||||
As discussed above, adding and removing projects never affects who can see an | As discussed above, adding and removing projects never affects who can see an | ||||
object. This is an explicit product design choice aimed at reducing the | object. This is an explicit product design choice aimed at reducing the | ||||
complexity of policy management. | complexity of policy management. | ||||
Phabricator projects are a flexible, general-purpose, freeform tool. This is a | Phorge projects are a flexible, general-purpose, freeform tool. This is a | ||||
good match for many organizational use cases, but a very poor match for | good match for many organizational use cases, but a very poor match for | ||||
policies. It is important that policies be predictable and rigid, because the | policies. It is important that policies be predictable and rigid, because the | ||||
cost of making a mistake with policies is high (inadvertent disclosure of | cost of making a mistake with policies is high (inadvertent disclosure of | ||||
private information). | private information). | ||||
In Phabricator, each object (like a task) can be tagged with multiple projects. | In Phorge, each object (like a task) can be tagged with multiple projects. | ||||
This is important in a flexible organizational tool, but is a liability in a | This is important in a flexible organizational tool, but is a liability in a | ||||
policy tool. | policy tool. | ||||
If each project potentially affected visibility, it would become more difficult | If each project potentially affected visibility, it would become more difficult | ||||
to predict the visibility of objects and easier to make mistakes with policies. | to predict the visibility of objects and easier to make mistakes with policies. | ||||
There are different, reasonable expectations about how policies might be | There are different, reasonable expectations about how policies might be | ||||
affected when tagging objects with projects, but these expectations are in | affected when tagging objects with projects, but these expectations are in | ||||
conflict, and different users have different expectations. For example: | conflict, and different users have different expectations. For example: | ||||
▲ Show 20 Lines • Show All 44 Lines • Show Last 20 Lines |
Content licensed under Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) unless otherwise noted; code licensed under Apache 2.0 or other open source licenses. · CC BY-SA 4.0 · Apache 2.0