Hello all,
As you might know, the Wikimedia Foundation (WMF) has moved most Mediawiki (MW)-related repositories from svn version control to git + gerrit. As a consequence, the WMF also wants to stop running their svn server - which is the server we are using.
Now the question is: where do we want to move to, and what version control system (vcs) do we want to use? Do we find that the WMF gerrit-based system is user-friendly and easy enough? Do we care about having svn-based access?
I think there are a few options we can consider:
1) go with the gerrit flow: convert the repository to git and host the repositories with the WMF. This has the advantage of having the repository in a practical place (with all the other MW related repositories).
2) move to github: convert to git, and host the repository at github. This has the advantage of the user-friendlyness of github, but also gives us SVN access. We can always easily move to WMF-based hosting once we feel it is user-friendly enough: the github repository will then just mirror the WM=F-hosted repository.
3) move to another SVN host. This is easier (we don't need to convert any repository), but it also means that it will be hard to move to WMF-based hosting when we want. In addition, we don't get the nice things git gives us: easy branching and easy patch submission ('pull requests').
Personally, I am in favor of option (2): gerrit is clearly useful for managing a project of the size of MW, but I think it is probably overkill for something the size of pywikipedia. Github has an (imo) much clearer interface than gerrit, and has tons of information for new git users. Last, but not least, github has svn support, which makes it even easier to switch, for both contributors and users.
I welcome your opinions!
Merlijn
2012/12/26 Merlijn van Deen valhallasw@arctus.nl:
Hello all,
As you might know, the Wikimedia Foundation (WMF) has moved most Mediawiki (MW)-related repositories from svn version control to git + gerrit. As a consequence, the WMF also wants to stop running their svn server - which is the server we are using.
Now the question is: where do we want to move to, and what version control system (vcs) do we want to use? Do we find that the WMF gerrit-based system is user-friendly and easy enough? Do we care about having svn-based access?
I think there are a few options we can consider:
- go with the gerrit flow: convert the repository to git and host the
repositories with the WMF. This has the advantage of having the repository in a practical place (with all the other MW related repositories).
- move to github: convert to git, and host the repository at github.
This has the advantage of the user-friendlyness of github, but also gives us SVN access. We can always easily move to WMF-based hosting once we feel it is user-friendly enough: the github repository will then just mirror the WM=F-hosted repository.
- move to another SVN host. This is easier (we don't need to convert
any repository), but it also means that it will be hard to move to WMF-based hosting when we want. In addition, we don't get the nice things git gives us: easy branching and easy patch submission ('pull requests').
Personally, I am in favor of option (2): gerrit is clearly useful for managing a project of the size of MW, but I think it is probably overkill for something the size of pywikipedia. Github has an (imo) much clearer interface than gerrit, and has tons of information for new git users. Last, but not least, github has svn support, which makes it even easier to switch, for both contributors and users.
I welcome your opinions!
Hi,
As a user who sometimes wants to submit patches, I also prefer option (2). The pull requests and branching in github are a breeze compared to both the current system and gerrit. Plus, with just a little bit of effort from the maintainers, each of us could get proper attribution in ohloh - you can set the author as a different person from the commiter. :)
Regards, Strainu
Hoi Merlijn,
Op 26-12-2012 13:28, Merlijn van Deen schreef:
Hello all,
As you might know, the Wikimedia Foundation (WMF) has moved most Mediawiki (MW)-related repositories from svn version control to git + gerrit. As a consequence, the WMF also wants to stop running their svn server - which is the server we are using.
No planned date yet so we don't have to rush anything.
Now the question is: where do we want to move to, and what version control system (vcs) do we want to use? Do we find that the WMF gerrit-based system is user-friendly and easy enough? Do we care about having svn-based access?
I think there are a few options we can consider:
- go with the gerrit flow: convert the repository to git and host the
repositories with the WMF. This has the advantage of having the repository in a practical place (with all the other MW related repositories).
+1
- move to github: convert to git, and host the repository at github.
This has the advantage of the user-friendlyness of github, but also gives us SVN access. We can always easily move to WMF-based hosting once we feel it is user-friendly enough: the github repository will then just mirror the WM=F-hosted repository.
-1, I would like to keep everything together in one central place, don't scatter it all over the internet. Kill Sourceforge and have everything like Mediawiki. It's not that I like Gerrit and Bugzilla that much, but I hate to be on yet another website. One of the things to consider too is the automatic testing. We could slowly start deploying that so every commit gets checked and maybe in the future we're able to detect stuff like https://bugzilla.wikimedia.org/show_bug.cgi?id=43177 . We should be moving closer to Mediawiki and the api, not away from it.
- move to another SVN host. This is easier (we don't need to convert
any repository), but it also means that it will be hard to move to WMF-based hosting when we want. In addition, we don't get the nice things git gives us: easy branching and easy patch submission ('pull requests').
-1, per above.
Maarten
SVN - I think we should be moving away from it. If we switch to a host that has specialized GIT+SVN support, it will be hard to move away to another provider that doesn't have elaborate SVN features.
Agree with Martin re moving closer to API & MW in general. Hosting on MW gives us a very different status than 30+ MW API libraries on the web. We should be using our expertise in building the core product, and reduce user's confusion of which one to pick (all else being equal).
Auto-build & test - would love that. I have already set up a labs project mediawiki-api, we could do major experimentation there.
Gerrit is hard, true, but with time we will build enough documentation to make it easy. Also I wonder if we will be able to use MW hosting without Gerrit - by allowing direct master commits.
--Yurik
On Wed, Dec 26, 2012 at 10:45 AM, Maarten Dammers maarten@mdammers.nlwrote:
Hoi Merlijn,
Op 26-12-2012 13:28, Merlijn van Deen schreef:
Hello all,
As you might know, the Wikimedia Foundation (WMF) has moved most Mediawiki (MW)-related repositories from svn version control to git + gerrit. As a consequence, the WMF also wants to stop running their svn server - which is the server we are using.
No planned date yet so we don't have to rush anything.
Now the question is: where do we want to move to, and what version control system (vcs) do we want to use? Do we find that the WMF gerrit-based system is user-friendly and easy enough? Do we care about having svn-based access?
I think there are a few options we can consider:
- go with the gerrit flow: convert the repository to git and host the
repositories with the WMF. This has the advantage of having the repository in a practical place (with all the other MW related repositories).
+1
- move to github: convert to git, and host the repository at github.
This has the advantage of the user-friendlyness of github, but also gives us SVN access. We can always easily move to WMF-based hosting once we feel it is user-friendly enough: the github repository will then just mirror the WM=F-hosted repository.
-1, I would like to keep everything together in one central place, don't scatter it all over the internet. Kill Sourceforge and have everything like Mediawiki. It's not that I like Gerrit and Bugzilla that much, but I hate to be on yet another website. One of the things to consider too is the automatic testing. We could slowly start deploying that so every commit gets checked and maybe in the future we're able to detect stuff like https://bugzilla.wikimedia.** org/show_bug.cgi?id=43177https://bugzilla.wikimedia.org/show_bug.cgi?id=43177. We should be moving closer to Mediawiki and the api, not away from it.
- move to another SVN host. This is easier (we don't need to convert
any repository), but it also means that it will be hard to move to WMF-based hosting when we want. In addition, we don't get the nice things git gives us: easy branching and easy patch submission ('pull requests').
-1, per above.
Maarten
______________________________**_________________ Pywikipedia-l mailing list Pywikipedia-l@lists.wikimedia.**org Pywikipedia-l@lists.wikimedia.org https://lists.wikimedia.org/**mailman/listinfo/pywikipedia-lhttps://lists.wikimedia.org/mailman/listinfo/pywikipedia-l
I don't know git and gerrit and can't compare the possibilities. All I would like that if we have to move someone write a step-by-step manual for newbies.
Responding to both Maarten and Yuri because of a large overlap in their opinions ;-)
On 26 December 2012 16:45, Maarten Dammers maarten@mdammers.nl wrote:
As a consequence, the WMF also wants to stop running their svn server - which is the server we are using.
No planned date yet so we don't have to rush anything.
Sumana (cc'ed) mentioned to me that SVN will switch to read-only in March. I don't think it's a really 'hard' deadline, but I also think the WMF would not be amused if we had no plans and some schedule at that point :-)
On 26 December 2012 16:45, Maarten Dammers maarten@mdammers.nl wrote:
-1, I would like to keep everything together in one central place, don't scatter it all over the internet. Kill Sourceforge and have everything like Mediawiki. It's not that I like Gerrit and Bugzilla that much, but I hate to be on yet another website.
On 26 December 2012 18:24, Yuri Astrakhan yuriastrakhan@gmail.com wrote:
SVN - I think we should be moving away from it. If we switch to a host that has specialized GIT+SVN support, it will be hard to move away to another provider that doesn't have elaborate SVN features.
Agree with Martin re moving closer to API & MW in general. Hosting on MW gives us a very different status than 30+ MW API libraries on the web. We should be using our expertise in building the core product, and reduce user's confusion of which one to pick (all else being equal).
I'd like to note that, with git, it's not an or-or situation, but rather an and-and situation. After all, the WMF is also working on integrating github-style pull requests with gerrit, which means you get the best of both worlds: hosted at the WMF, with all the infrastructure (including testing et al), but also with the ease and documentation of github. On the other hand, if we host it at github, it's easy enough to sync the repository to gerrit, too.
The question is which will be our main repository, (and thus the other one will be the mirror) - not which one of the two will exist :-)
In any case, I'd like to have SVN compatibility for our /users/ - SVN is also used as a crude auto-updating mechanism. I think it's possible (at least, I've tried some things and it seems to work) to use svn:externals to link a new repository from the old one (stupidly, SVN doesn't just do http redirects). However, I think we should move to a slightly more intelligent auto-update mechanism.
On 26 December 2012 16:45, Maarten Dammers maarten@mdammers.nl wrote:
One of the things to consider too is the automatic testing. We could slowly start deploying that so every commit gets checked and maybe in the future we're able to detect stuff like https://bugzilla.wikimedia.org/show_bug.cgi?id=43177 .
If we want to do post-merge tests, it doesn't matter where the repository is located. However, for pre-commit tests, I agree it's much easier to use Gerrit, as it already has Jenkins (= automated test runner) integration.
On 26 December 2012 18:24, Yuri Astrakhan yuriastrakhan@gmail.com wrote:
Also I wonder if we will be able to use MW hosting without Gerrit - by allowing direct master commits.
Yes, this is possible, but then we have none of the positive sites of hosting it at the WMF: no testing integration and no pre-commit review.
So - yes, there are certainly advantages in moving to gerrit. But, compared to github, the documentation is much less clear. However, maybe the right response is 'fix the docs' instead of using github :-)
Merlijn
So - yes, there are certainly advantages in moving to gerrit. But, compared to github, the documentation is much less clear. However, maybe the right response is 'fix the docs' instead of using github :-)
Agree - lets fix gerrit docs and benefit the entire MW infrastructure. And
I think it is by far better for MW in general - some pywiki users turn into MW devs, and if jumping from one to another is trivial, more might join (this is how I got into MW long time ago).
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 27.12.2012 16:54, info@gno.de wrote:
Some remarks from me. Sorry I am not quite familar with git/gerrit vcs as well as svn. I just use these things as long they work for me. I use tortoiseSVN for the svn repository and I played a bit with tortoiseGit and mw repository samples. I guess the only thing I need for git repository is push access via labs. I hope so.
"I just use these things as long they work for me." - to be honest I feel the same, SVN works for me... ;))
I think for bot operators it is quite similar to checkout the git or svn repository or at least use the nightly dump.
I agree with Martin to move closer to mw and not to spread over different sites. This is also valid for documentation which is still messy. But bugzilla seems not to be an alternative for sf yet. So we should not move outside the mw family only und just to keep svn.
If we could have github as a mirror und the main repository at mw, why not. But I cannot estimate whether this has any benefits.
Also the rest I can agree with (despite the fact that I do not use tortoise - come'on; how still wants to use windows?! ;))) especially since it looks like everybody wants to follow "the hype" and migrate to git. For me the most important thing would be that finally somebody is able to build a VCS that is not that bad that everybody has to replace it after 5 years again...(CVS, SVN, git, <next candidate?>) (how should it explain this to my children...?! ;))
Greetings and a happy new year to everybody!! Thanks for all you work! DrTrigon
2012/12/30 Dr. Trigon dr.trigon@surfeu.ch
to git. For me the most important thing would be that finally somebody is able to build a VCS that is not that bad that everybody has to replace it after 5 years again...(CVS, SVN, git, <next candidate?>) (how should it explain this to my children...?! ;))
Tell them that Santa Claus has taken the previous one to North Pole because his deers need it. They will understand!
On 30 December 2012 22:34, Bináris wikiposta@gmail.com wrote:
2012/12/30 Dr. Trigon dr.trigon@surfeu.ch
to git. For me the most important thing would be that finally somebody is able to build a VCS that is not that bad that everybody has to replace it after 5 years again...(CVS, SVN, git, <next candidate?>) (how should it explain this to my children...?! ;))
Tell them that Santa Claus has taken the previous one to North Pole because his deers need it. They will understand!
I mentioned this discussion to a member of the WMF staff who advised that moving directly to Git/Gerrit would be much better and linked to http://phenoelit.org/blog/archives/2012/12/21/let_me_github_that_for_you/ind... and http://www.drupal4hu.com/node/242 as just a couple of reasons as to why *not *to use GitHub.
In the past couple of days I was reworking my mediawiki dev setup, and I think it might be useful to the script runners/writers as well - an auto-configured (vagrant) linux virtualbox without gui and with all dev files residing on the host.
All dev files reside on the host and are simply mapped as a /srv/... dir in the client, all editing can easily be done on the host using whatever linux/windows/... tools users prefer. WinPdb sounds like a good remote debugging solution. Because it is possible to auto-configure the virtual box, we can set it up to have git, gerrit, unit testing, and all other tools needed for communal work. The box already includes a basic mediawiki installation, so devs can try out their new scripts on it.
Also, very importantly, we can have very simple instrtuctions because everyone's environment would be identical.
"vagrant up" ssh to the machine run script or git pull or git-review or browse to localhost:8080 or ...
My notes on the (work in progress) process are here. Most things that I found there will be moved to the auto-settings files. I am working with the settings' author on that. http://www.mediawiki.org/wiki/User:Yurik/Installing_Linux_virtual_box_under_...