I think the github mirror we set up for testing purposes has been more or less a success:
The mirroring seems to work well: the github repository is staying in sync with the bitbucket repo every time we merge pull requests on bitbucket. To make further work on transitioning to github easier, I'd like to settle on what the final converted repo should like.
For the purposes of discussion, I'd like to propose simply renaming the yt-project/yt-test repo to be yt-project/yt and agreeing that the current conversion is satisfactory. This means we'll agree not to use an alternate conversion technique that will change git commit hashes.
Our mirror bot uses hg-git, and the converted repo hg-git produces isn't necessarily perfect. In particular, two issues have come up:
* Since git is more selective than mercurial about e-mail and username formatting, there are a number of commits associated with dummy e-mail addresses like none@none
* Since we do most of our development on a branch named "yt" (not "default" as is typical of mercurial repos) almost every commit in our history has a comment in the git commit message recording that it hapenned on the "yt" or "stable" branch. This makes it possible to round-trip from hg to git and back to hg, but it's also some extra noise in every single commit message.
We could in principle ameliorate these issues by using something besides hg-git to do the conversion or by modifying hg-git to avoid these issues. The former options will lose the nice property of being able to round-trip and for others to independently export work from their forks. The latter option will require us to modify hg-git and waiting for upstream hg-git to review our changes, which might take a while, or telling everyone to use a hacked version of hg-git.
Personally, I don't think either of those options are worth the hassle for what to me are minor annoyances. I think I've also ameliorated the username/e-mail ambiguity in the converted history by adding a .mailmap file to the repo:
In addition, the mirroring process we have now seems to work well, so just renaming the yt-test repo and calling the conversion final avoids a bunch more work which will block further progress on the conversion.
What do you all think? It would be great to get people's +/-1 on renaming yt-test to yt on github.com/yt-project
Once we have a final repo name we will be able to start porting tooling like the website generator without worrying about the name or content of the final repo changing.