How do teams using a mix of GitHub, GitLab, or Bitbucket track pull requests, stale branches, and releases? Is switching between providers a real daily problem, or mostly manageable?
How do you keep track of work across multiple Git providers?
Answers
For day-to-day development, the provider may not matter much once you have access and the repositories cloned. The bigger question is whether people need a cross-provider view of reviews and releases.
For dependencies between projects, an artifact server can also help. A consuming project can depend on a released build rather than needing to track another repository directly, then update that dependency when a new release is ready.
Reply to this answer
If cross-provider visibility is the pain point, a dashboard that pulls review and release information from each provider's API is one option. But someone has to own the integration. Tokens change, permissions differ, and a dashboard that quietly stops updating is worse than checking two places.
Same goes for stale branch cleanup. A script on one provider doesn't cover the others, so check where cleanup actually runs before trusting the picture.
7e+foghorn_306:
Keeping a couple of provider pages open might be good enough if the dashboard is more work to maintain than the problem it solves.
Reply to this answer
I would consolidate where practical. Multiple providers mean more places to configure branch protections, CI, access, and security checks. Those settings aren't necessarily expressed the same way, so keeping policies consistent takes work.
It can also make search and investigating security issues harder when the information is spread across servers. Automation helps, but it doesn't eliminate the need to understand what is configured where.
Reply to this answer
Multiple providers can have a purpose. For example, public projects and internal code may live on different systems. That doesn't necessarily mean every provider needs to be an equal source of truth for every repository.
If the goal is distribution, one setup is to manage changes and reviews in one place, then copy tagged releases to read-only repositories elsewhere. Restricting reviews and issues on those copies makes it clearer where changes belong.
vireo+detour_8:
Replication can serve other needs too, such as keeping a copy available for an audit. The key is being clear about which copy people should change.
Reply to this answer
Add your answer
Answers are reviewed before publication.
4m!postmark_62:
That distinction helps. I was thinking especially about leads who need to see open reviews and release status across repositories.