What is difference between Reviewers and Assignees on GitHub?

12.8k views Asked by At

When I create pull request, I can see two options as Reviewers and Assignees. What is difference between those? I think this is from any of last version of github.

2

There are 2 answers

2
Schwern On BEST ANSWER

Reviewers and assignees are a tool for organizing who is working on what pull request and issue. They don't confer any extra permissions.

Reviewers are people you are specifically requesting to review your pull request. From the docs...

Pull request authors and repository owners and collaborators can request a pull request review from anyone with write access to the repository. The requested reviewer will receive a notification that you asked them to review the pull request.

Whereas "assignees clarify who is working on specific issues and pull requests", also from the docs.

The specific difference is up to the project, but the basic difference is that reviewers are expected to review, and the assignees are in charge of actually handling the merge (which probably also includes review).

For example, if I was submitting a pull request that changed the type system, I might assign it to the person in charge of the type system to take care of; that might be a specific person, or the project lead. Or I might assign it to whomever said they'd take care of it in the project chat. An assignee says "this person is handling the issue".

But if that pull request also has Windows specific code, I might request a review from someone on the project that knows Windows well.

Another use might be to always have two people look at a pull request, one reviewer, one assignee. In this case that would be handled by a project manager ensuring that every pull request has both an assignee and a reviewer.

0
lal On

"assignee" has a looser definition and can be used different to suit team needs.

In our team of 8 devs, we have 1 reviewer and up to 2 assignees. We use "assignee" to designate person who opened the Pull Request and is responsible for making the Pull Request comment/change requests. At times, if a QA is involved with merging & closing the PR, QA-person is also added as assignee.

Using "assignee" helps locating the PR in future easily. One of my project has >3000 PRs.

is:open is:pr author:raya-dumas

is:closed is:pr assignee:raya-dumas

Also have a look at this: https://stackoverflow.com/a/41174022/342794