I watched https://youtu.be/nI5VdsVl0FM?t=226 about how to manage issues with labels, milestones and Projects, but that seems specific to each Github repository.

Say we have a feature push that requires tracking issues from both a "frontend" & a "backend" repository in a single organisation for simplicity sake. How do you collate, prioritize and track progress with Github issues that span several repositories?

Right now, one possible solution requires me to manually synchronize labels across repositories which seems rather tedious and lacks ordering.

Any suggestions here please? I did have a quick look at Zenhub, but that seems again repository bound and it doesn't seem to write back labels if you actually bothered to sort the issues or tasks into backlog/in-progress etc.

  • Disagree with the close vote. Asking "How do I X?" (possibly on-topic) is not the same as "What tool should I use to do X?" (off-topic). – Sarov May 16 at 13:14

Limited Native Options; Flexible API

Full-fledged, multi-project and multi-repository project management is not really what GitHub does best. You may want to explore third-party solutions for your bug tracking and milestone management if the native options aren't enough for you.

GitHub has recently gained the notion of projects that span several repositories. However, this is somewhat limited, and may not actually support the full functionality you're looking for.

Even if you can't natively create labels and milestones across all your various repositories, you can certainly leverage the API to do so programmatically. For example, by using the following calls:

you could iterate over each repository to add the labels and milestones you want. A quick search even turned up some NodeJS code that might work for you.

Basically, it looks like your options are to go with a third-party solution with GitHub integration, or to roll your own via the API. Good luck!

Pablo from ZenHub here (answering the question since ZenHub was specifically mentioned).

Most ZenHub features are multi-repository; you can add repositories to an existing Board so both backend and front-end issues will be in the same place.

From the Board, you can create a multi-repo milestone, which creates matching milestones across all the repositories in a given Board, and then group them for the Velocity and Burndown reports, as well as for filtering in the Board.

For creating labels across multiple repositories, you can select issues from multiple repositories in the Board, and then add an existing label; if the label doesn't exist in one of the repositories ZenHub will create it for you.

I hope that helps!

Inelegant solution: declare one repo (perhaps a new one) to be the one where tickets will be managed. Connect to them from commits/PRs in the other repos via explicit links rather than relying on the magic syntax.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.