2

I recently discovered that you can create Milestones and Project Boards on Github repositories.

With project boards, you can place issues and pull requests and move them around the boards (Kanban).

But what is the purpose of having pull request inside boards ? Aren't pull request associated with issues ? Why would I place pull request inside board ?


UPDATE:

As user @BertrandMartel pointed out(read answer below), it's all about how you use issues and pull request. Since Github is home for Open Source Development, users of software could create an issue to report something, but developers can create pull request to do their work. Developers don't have to report an issue, they only create features. Same is applied for end users; they probably want to point out if something is missing or not working properly. They are not expected to work on a project(create pull request).

Dinko Pehar
  • 5,454
  • 4
  • 23
  • 57

1 Answers1

2

When you add a pull request or an issue to the project board, it means you create a reference to an Issue or a pull request. No modification is done to the Pull request, it just says that this card links back to that pull request

Also a pull request is not associated with an issue. In fact a pull request is a special type of issue (note that it has a number field which is incrementing like the issue number when you create one). A pull request may be linked to other issues

But what is the purpose of having pull request inside boards

You can assign notes to it and associate them with a kanban style card which can be moved between different columns. Each columns having different meaning in terms of project management for your team

The model is the following :

  • Project
    • ProjectColumn
      • ProjectCard
        • ProjectCardItem (may point to Issue or pull requests)

Here is a graphical representation from graphql voyager :

enter image description here

From About project board :

Project boards are made up of issues, pull requests, and notes that are categorized as cards in columns of your choosing. You can drag and drop or use keyboard shortcuts to reorder cards within a column, move cards from column to column, and change the order of columns.

Project board cards contain relevant metadata for issues and pull requests, like labels, assignees, the status, and who opened it. You can view and make lightweight edits to issues and pull requests within your project board by clicking on the issue or pull request's title.

Bertrand Martel
  • 42,756
  • 16
  • 135
  • 159
  • I also noticed how Issues and Pull requests increment separately, thanks for pointing that out. But I don't understand the whole flow then. If someone opens an issue for some bug, I place issue in `To Do` board, I create new branch, push and make pull request. What should I do then ? If I fix and merge, I can move issue to `Done` and close it. I don't see where and when should I place my pull request inside board since both issue and pull request are connected somehow. – Dinko Pehar Mar 20 '20 at 18:24
  • 1
    @DinkoPehar maybe for your usecase you don't need to add PR to the project board since you say that you have systematically 1 Issue = 1 PR. But maybe for bigger projects when you have hundreds PR and hundred issues waiting, having a project board specifying which are relevant for this project board may help – Bertrand Martel Mar 20 '20 at 18:32
  • 1
    Yes, I understand now. Thank you. I'm coming from an other platform where we had kanban boards containing only tasks (*issues*). We would manually merge into development branch and then pushed. There was no pull request. As you say, it's probably other methodology of platform. – Dinko Pehar Mar 20 '20 at 18:38
  • 1
    I found how bootstrap is using these project boards. I think developers who work on project can open pull request, but users of their software open issue if they want to report something. To them, both issue and pull request are same. https://github.com/twbs/bootstrap/projects/20 – Dinko Pehar Mar 20 '20 at 18:45