* More on svn workflows
@ 2010-01-23 22:57 tom fogal
0 siblings, 0 replies; only message in thread
From: tom fogal @ 2010-01-23 22:57 UTC (permalink / raw)
To: git
I have recently (1, 1.5 months ago?) started using a workflow similar
to the one described here:
http://www.spinics.net/lists/git/msg109896.html
(short summary: work in private branch, "merge --no-ff" into svn
upstream, "merge" from svn upstream.)
... with the minor modification that I use "--squash" instead of
"--no-ff". If I use --no-ff, I end up with a lot of "merge from master
into <myprivatebranch>" commits on my master branch before I dcommit.
It also merges in a lot of history that I feel like I shouldn't see--
that is, both the svn commit and my private branch's commit, and I'm
worried about what might happen if I dcommit that. That said, I might
be in that situation because I used --squash 3 or 4 times before I
realized I was misremembering that thread.
Anyway, my current issue is that whenever I do a `git commit' after a
"merge --squash", I end up with *everything* I've done since starting
the branch in the commit message. To be more explicit, say I've got
this setup:
o--o--o master
\
o--o--o private branch started
then I'll update master and merge it into my private branch:
o--o--o--------D master
\ \
A--B--C--o private
test, merge --squash private into master and dcommit:
o--o--o--------D---A'--B'--C'--D'' master
\ \ /
A--B--C--D' private
something happens upstream:
o--o--o--------D---A'--B'--C'--D''--E master
\ \ /
A--B--C--D' private
which I merge to private:
o--o--o--------D---A'--B'--C'--D''--E master
\ \ / \
A--B--C--D'-------------------E' private
I do some work, commit F, and decide I want to push it upstream, so
I'll do a merge --squash into master:
o--o--o--------D---A'--B'--C'--D''--E-------F' master
\ \ / \ /
A--B--C--D'-------------------E'--F private
Now the issue is when I `git commit' the merge from private, git says
this is a "squashed commit of the following", and lists the commit
messages for A, B, C, D, D', D'' E, E' and F. I really just want the
commit message for "F" in this case -- every other message is already
on the trunk, in a different commit. This wasn't such a big issue
at first: git picked up a few extra commits, so I hacked out the log
messages before committing them on master. After doing this for a
while though, there's something like 100 commits I have to wade through
while doing this, and it's only going to get worse and worse.
On the other hand, I'm sure there's some option I could use so "git
commit" would startup with an empty commit message in this case, but I
do *want* the partial history, as it helps me design the commit message
that I want the svn trunk's history to have.
What am I doing wrong?
-tom
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2010-01-23 23:24 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-23 22:57 More on svn workflows tom fogal
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.