Effective Project Management Across Multiple GitHub Repos

githubproject-management

We've got a system called Foo hosted as a repository in Github.

The system depends on a couple more microservices, called Bar and Baz. Each of these microservices is hosted as a separate repository.

We are getting lost when doing Issue Tracking since there is no single repository where the Issues live. A single Feature request might create Issues across multiple repositories, which might or might not affect the code in the main Foo project.

How can we do effective Project Management with Github's tools in these cases?

Best Answer

If the different services are developed together, this can be an indication that they should really be maintained in a common repository (monorepo). Splitting your code across multiple repositories sounds clean and elegant, but in reality it often makes it hard to keep them in sync.

But let's say you don't have that option.

Then, use a separate issue tracker for cross-cutting concerns. This could be an external tool like Jira, or this could be an empty GitHub repository that you just use for the issue tracker. For the individual service repositories, you might want to keep the issue trackers for service-specific issues, or disable them entirely (you can still use pull requests).

Github's built-in issue tracker is better than nothing, but it is woefully inadequate for complex use cases. There's nothing wrong with using a different tool that fits your use case better, or using ways to extend the GH issue tracker with additional features.