Page MenuHomePhabricator

Handling a split repository
Closed, WontfixPublic

Description

This is probably a strange use case, but I am unsure on the best way to handle this within Phabricator.

We have a repository which is basically the "main" repository for our company (in that, it contains the majority of the code used to run our site). Mostly for historical reasons, this repository exists in two places (lets call them repository X and repository Y). Essentially, repository X is for production code (and consist of a single branch, master) and repository Y is for development, and all of our engineers can push there.

The consequence is that there are two repositories corresponding to the same arcanist project. Currently, I have only added repository X to Diffusion, which at the time seemed to make sense. However, now whenever an engineer is working on branch Z at repository Y and submits a differential, the differential shows X as the repository. While this doesn't do any harm, it is not technically correct.

Is there a "better" way to handle this use case?

Event Timeline

joshuaspence assigned this task to epriestley.
joshuaspence raised the priority of this task from to Needs Triage.
joshuaspence updated the task description. (Show Details)
joshuaspence added a project: Diffusion.
joshuaspence added a subscriber: joshuaspence.

We're generally moving to reduce the necessity, prominence, and importance of Arcanist Projects. Likely, you can just remove the project configuration from both repositories (i.e., remove the line from .arcconfig) and have everything work like you want it to. This should only affect a very small number of relatively obscure features (notably, symbol linking), which we can fix if they're issues. (The documentation should mostly reflect this state of the world nowadays, but there are probably a few places we still need to clean up.)

Otherwise, using different Arcanist Projects (x-production, x-development) might be clearest.

(Yell if you have followup questions, etc.)