[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: It gits on my nerves
From: |
Ralf Wildenhues |
Subject: |
Re: It gits on my nerves |
Date: |
Sat, 24 Nov 2007 11:03:54 +0100 |
User-agent: |
Mutt/1.5.13 (2006-08-11) |
Hello Akim,
* Akim Demaille wrote on Sat, Nov 24, 2007 at 10:18:30AM CET:
> I have been fighting with git for almost two hours
> to put my patches in order and to apply them upstream.
I'm really sorry it's so much trouble for you.
> 117 git clone git://git.sv.gnu.org/automake.git
This is a read-only checkout. You need to use the git+ssh protocol in
order to do writes:
git clone ssh://address@hidden/srv/git/automake.git
(assuming akim is your login).
<http://savannah.gnu.org/maintenance/UsingGit> explains it.
> 118 git branch ws master
OK, here you needed to `cd automake' first.
> 119 ls
> 120 cd automake
> 121 git branch ws master
This creates branch "ws" but still leaves your current tree showing
"master".
[...]
Maybe it helps if I show how I work:
- doing some work
# first, create a feature branch and check it out:
git checkout -b my-work-branch master
# Now, hack away:
while $not_done; do
$edit
git add changed-files
git commit
done
- getting third-party changes into my tree:
# ensure your current tree is clean (all changes committed etc)...
# then, go back to master:
git checkout master
# get changes from upstream:
git pull
# now rebase my feature branch upon the new upstream tree:
git checkout my-work-branch
# (this may require multiple merging steps, read the output):
git rebase master
- publishing my finished changes:
# first, ensure my master is up to date wrt. upstream (see above).
# then, merge feature branch into master branch:
git checkout master
git merge my-work-branch
# (if you rebased the branch, then this should be a fast-forward.)
# now, finally publish:
git push
Hope that helps a bit. Again, I'm happy to apply patches for you if you
like.
Cheers,
Ralf