[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Some more git usage instructions (was: About merging the Hurd homepage a

From: Thomas Schwinge
Subject: Some more git usage instructions (was: About merging the Hurd homepage and the Hurd wiki)
Date: Wed, 12 Nov 2008 23:40:08 +0100
User-agent: Mutt/1.5.11


On Wed, Nov 12, 2008 at 06:50:05PM +0100, Arne Babenhauserheide wrote:
> Am Mittwoch 12 November 2008 15:49:11 schrieb Thomas Schwinge:
> > On Tue, Nov 11, 2008 at 11:09:19AM +0100, Arne Babenhauserheide wrote:
> > Typically, you'd simply ``git fetch'' (or ``git clone'' a new
> > repository), notice the new `origin/homepage' branch, create a new
> > working branch: ``git checkout -b homepage-work origin/homepage'', work
> > on that branch, transfer the results you want to publish to the
> > `homepage' branch and ``git push'' that one.  Does that help?
> This helped me get the data, but I didn't manage to transfer my local commit 
> to origin/homepage (I read the man pages and they didn't really help me). 
> How do I transfer my changes to the origin/homepage branch? 

Unless changed, the local branch named `homepage' will correspond to the
remote branch `origin/homepage'.  Create the local branch `homepage' with
``git branch homepage origin/homepage'' (potentially afterwards followed
by ``git checkout homepage'' to switch your working directory to it), or
directly ``git checkout -b homepage origin/homepage'' to create it and
immediatelly switch your working directory to it).  Then install changes
on that branch: either edit a file and ``git commit FILE'' or ``git merge
SOME-OTHER-WORKING-BRANCH'' or ``git cherry-pick WHATEVER''.  Verify what
you're going to push: ``git log --reverse -p -C -M
homepage..origin/homepage''.  Push it: ``git push homepage''.  Then it
will be installed on the remote `homepage' branch, which is locally known
as `origin/homepage'.  If that pushing fails with a message like ``can't
do fast-forward'' then there have (in the mean time) other changes been
installed on the remote `homepage' branch.  Fetch these via ``git
fetch''.  Rebase your local branch's changes (still assuming that
`homepage' is checked out into your working directory) on top of those:
``git rebase origin/homepage'' and push again: ``git push homepage''.

Please don't merge from `origin/master' into `homepage' -- I'll do this
once as soon as we do the switch-over.  (You can of course do this
locally on some of your own working branches, but please don't push the
result onto `origin/homepage'.)  You're of course encouraged to continue
doing and push changes onto `origin/master' (as you're doing already now)
and also original changes onto `origin/homepage'.

To create the web pages at
<http://www.thomas.schwinge.homeip.net/hurd-wiki/>, I have a checkout
like ``git checkout -b homepage-work origin/homepage'' and periodically
(manually) do a ``git fetch origin && git merge origin/master && git
merge origin/homepage''.  This working branch `homepage-work' will be
thrown away as soon as all changes have (once) been properly merged from
`origin/homepage' into `origin/master'.

More questions?


Attachment: signature.asc
Description: Digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]