www-infrastructure-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dmitriy Lyubimov <dlie...@gmail.com>
Subject Re: Current use of GitHub
Date Mon, 04 Apr 2011 17:15:32 GMT
> At the moment I have given up on providing a publicly accessible look into  what I'm
doing until I commit to svn.  AFAICT github is useless for any project undergoing development
since as soon as you do git svn rebase locally to pull in svn commits you can no longer push
your changes to an existing github branch.  If I'm missing something I'd love to know how
to make this work.

Yes you can do it

just add github remote.

say you are on a trunk and your 'origin' points to apache git.

git remote add github git@github.com:<your-user>/<your-github-repo>

and then you can push your branches to github e.g.
git push github trunk:trunk

What i usually do is i create issues branches locally and set them
track the branch in github (since i never can push them into ASF) such

git checkout -b MAHOUT-555  (creates local brunch based on current
branch, such as trunk)
git push -u github MAHOUT-555:MAHOUT-555

now the issue branch is set up to track github's brunch
so you've done something there (or somebody done something there) then
assuming you want to commit it by merging -- you can merge directly to
github branch by

git fetch github (fetch latest github branch snapshots)
git checkout trunk (-- make sure we are on local trunk)
git svn rebase (-- rewind trunk to latest in svn)

git merge --squash github/MAHOUT-555 (-- merge github branch changes
but don't commit and squash history so it looks like a single commit )

//... resolve conflicts if necessary
git commit -m "MAHOUT-555" (--format squashed history as single commit)

git svn dcommit (-- push into svn) .

now you have squashed issue commited to your local trunk

> -----
> git svn rebase is a major pain.  I don't really understand why but it looks to me like
I have to keep resolving the same merge conflicts.  I'm also not completely convinced that
all my local work gets preserved through the merge conflict resolution.
> I used to use svn branches for ongoing work but with the svn version that tracks merges
I've given up on this because of the enormous volume of noise in an svn merge commit.
> thanks
> david jencks
> On Apr 3, 2011, at 10:17 PM, David Blevins wrote:
>> I know a few of us use Git for Apache work.  Feel encouraged to lend some feedback
to infra.
>> -David
>> Begin forwarded message:
>>> Resent-From: <dblevins@visi.com>
>>> From: "Gav..." <gavin@16degrees.com.au>
>>> Date: April 2, 2011 11:45:10 PM PDT
>>> To: <infrastructure-dev@apache.org>
>>> Subject: Current use of GitHub
>>> Reply-To: infrastructure-dev@apache.org
>>> I'm trying to understand the _current_ workflows of those ASF committers
>>> using Git and how the ASF GitHub mirrors tie into that - if at all.
>>> A fair few projects requested ASF git mirrors and also requested mirrors of
>>> that on GitHub (that 2nd request is now standard with the 1st)
>>> So far , from projects I've browsed on GitHub, I see a few forks here and
>>> there and a few Pull requests here and there.
>>> That is where it gets fuzzy for me. Obviously, no-one can actually pull in
>>> those pull requests into the Apache/$project repo mirror, so
>>> how are committers applying those pull requests? Are they pulling them into
>>> their own copies of the mirror, converting them into a patch
>>> that svn understands and then applying, if so, how? If not, how else?
>>> Also, apart from Github, how else are Git only users providing patches to
>>> projects, which patch programs are in use, and of those which
>>> are most used by those projects/committers that need to apply them.
>>> For those of you that are committers and have direct access to svn, but are
>>> preferring to use Git before then committing your work to svn,
>>> what is your workflow and tools used (whether or not it involves GitHub)
>>> No deviating into what could happen or what would be a good idea please yet,
>>> this is just a survey on what people are currently actually
>>> doing to incorporate Git into their workflows and how we then get those
>>> applied.
>>> Thanks
>>> Gav...

View raw message