[En-Nut-Discussion] Switching to GIT

Harald Kipp harald.kipp at egnite.de
Thu Sep 26 12:57:41 CEST 2013


On 26.09.2013 11:03, bon at elektron.ikp.physik.tu-darmstadt.de wrote:
>>>>>> "Harald" == Harald Kipp <harald.kipp at egnite.de> writes:
>     Harald> Why keep SVN as the "Git master"?
> Because switching to either git or hg implies policy and maybe will leave
> (parts of ) one group unhappy.

The current status is, that all active developers are happy with moving
from SVN to a distributed VCS. Some would prefer Mercurial in the first
place, but would prefer Git over SVN anyway. Correct me if I'm wrong.

>     Harald> Today I create a new SVN maintenance branch before
>     Harald> releasing a new final version and tag the trunk at that
>     Harald> point. Can I do the same on my local Git repo and will that be
>     Harald> automatically transfered via "git svn commit"?
> The principal command is "git svn dcommit"
> Well, there is "git svn branch <branchname> " and  "git svn dcommit
> <branchname>" that imply it can be done. I didn't test however yet.

Until now I'm almost the only one who merges bug fixes from the trunk
into maintenance branches. Considering my limited time, I'm a bit
concerned about any additional complexity.

>     Harald> Git allows a developer to pull from an untrusted source, check
>     Harald> the changes, and, if it looks fine, send a pull request to the
>     Harald> master. How to do that with SVN? Will the change be directly
>     Harald> committed by the developer, who received the untrusted change?
> Als not tested. But I guess you pull in the changeset locally and than you
> push to SVN with "git svn dcommit"

Not really sure, if this answers my badly verbalized question. I was
more referring to the role of the developer and the maintainer.

Usual work flow with Git, AFAIK: If you receive a patch, which you don't
trust, you can invite others to check it. They will pull this change set
from your public repository. If everything looks fine, you send a pull
request to the maintainer of the master, telling him, that this is a
verified patch. The maintainer will pull it into his local repo, have a
final look and then commit it to the public master repo.

Now, how does this work, if the SVN repo is our virtual "Git master"? Do
all developers still have write access to the master? Is this virtual
master the only way to distribute change sets among developers? If yes,
isn't that annulling characteristic features that made Git so
successful? Or are there better ways to handle it, which I'm too stupid
to see?



More information about the En-Nut-Discussion mailing list