Skip to content

Using GitHub Issues to Support Teamwork

Why Use Issues?

  1. Coordination: Assign work to individuals. Assign deadlines.

  2. Communication: Tell others what you are doing.

  3. Project Memory: Search Issues to find solutions to bugs, reasons why decisions where made, etc. Issues cannot be deleted.

Notifications

Click on the 🔔 on the top-right at GitHub. Read Managing subscriptions on GitHub. You can choose email, or use mobile app.

You should be "watching" your own repo, thus getting notified of anything new there. You probably should also be watching our class discussion.

Use @josemvidal to contact me, @instructors to contact the TAs and me. You only need to do it once in an Issue, after that we are "participating" and so will get notified of changes.

Conventions

We will use Issues with label:readme when we (the @instructors) want to communicate something to the team. You do not have to respond.

Use our milestones.

Use Issues with label:question for your own research work. For example, create an Issue with title "AWS vs Google: which one do we use?" and then enter what you find as comments.

If you have a question for us, create an Issue with label:question and assign it to @josemvidal or @instructors. We will answer.

Assign work issue to 1 person, whenever possible.

If an assigned person does not get it done by your deadline and you need it done, you can re-assign.

Tips

Change the Title of an Issue to reflect its current mission.

Use 👍 and 👎 reactions to vote.

Close Issue when you are done doing it. You do not need anyone's permission.

Close issues in commit messages or pull requests using closes #5. See documentation.

Link multiple commits to the same Issue by just mentioning it (#5) in the comment. The Issue will look like this.

Use @username to get that user's attention, @josemvidal for me.

Break up an Issue into smaller parts by using task lists:

-   [x] Add component
-   [ ] Add css
-   [ ] Cleanup

Child issues refer to parent using “for #1” or “child of #1

Add a project board to control flow, prioritize: In-progress, Blocked, Todo Later, Maybe, Review, Testing.

Resources