Are we not just looking for a solution to a problem that doesn't really
exist? Is SVN stopping us from doing anything, or from changing to a better
way of working for our project style? The move from CVS to SVN was worth
doing, but is a move to git worth doing?
If you think we have a use for git submodules, would svn externals not do
what you want instead?
I like git (from my limited experience with it), but as the majority of our
developers work in a Windows environment, I'm not convinced it's worth
moving everyone to, especially when we already have the git mirror.
Although one real win for us in moving to github would be in moving our
repository off of our servers and onto git's cloud backed service.
Ged.
-----Original Message-----
From: Ros-dev [mailto:ros-dev-bounces@reactos.org] On Behalf Of Colin Finck
Sent: 25 February 2016 06:42
To: ros-dev(a)reactos.org
Subject: Re: [ros-dev] Consideration for migrating from Subversion to Git
Hi Mike,
So I was about to finish my ongoing server work in the next few days and
then push for a move to Git on the mailing lists. Thanks for spoiling those
plans! :)
I totally agree with all your raised points. I'm using Git every day at work
now, so do several of our developers. For some of us, ReactOS remains the
only project still using SVN.
While Git's usability under Windows has long been a problem (check ros-dev
from April 2009), TortoiseGit and GitHub have greatly simplified things
here.
I also got introduced into Git submodules recently. They're perfectly suited
for a large project like ReactOS that should be split up into multiple
smaller subprojects. Having several easily hackable subprojects, and then
having them on GitHub, gives us way more exposure and probably more
contributors.
So why hasn't this move happened earlier? Especially when some of our
developers are already actively using the git-svn mirror?
One reason is definitely trying to get a smooth transition done. You already
mentioned git-svn being buggy, and missing SVN branches are one part of the
problem. Reposurgeon looks interesting to do the right thing here.
Given that I'm used to Git by now, I also wouldn't mind if we fix a date,
make SVN read-only on that date and do all development in Git from then on.
AFAIK, the same has also worked for the CVS to SVN transition.
But I could imagine that there are still developers tied to the SVN way of
doing things. We would at least need a detailed Wiki page explaining some
common SVN tasks and how they're now done in Git/TortoiseGit.
There has also been the idea of employing a two-way mirror solution like
SubGit for 6 months to ease the transition. While I'm not fully opposed to
that idea, I fear that some people won't even give up SVN after that time.
But even more important, this would prevent us from making use of features
like Git submodules.
Answering one of your other questions inline.
Am 24.02.2016 um 12:59 schrieb Mike Swanson:
* Old versions of RosBE are under /tags. Is RosBE
maintained
elsewhere?
We used to have everything in the one big "reactos" repository. First, the
website and media split off as the "web" and "press-media" repos, then
some
tools followed as the "project-tools" repo. This one is also where RosBE is
now maintained.
When doing a proper transition to Git, all remnants of these repositories
should be removed from the history wherever possible.
Reposurgeon may be helpful here.
Cheers,
Colin