[Twisted-Python] github, again
jon at multani.info
Wed Jun 5 01:56:09 MDT 2013
Hi, just shiming in,
On Tue, Jun 04, 2013 at 09:55:19PM +0100, Terry Jones wrote:
> > So when the code is ready, the feature branch including any accumulated
> commits (history) will
> > get merged - and not a clean diff against the main repo?
> I'm very far from being a git expert. In fact, I'm kind of the opposite -
> git and I have a stormy relationship and everyone has to tell me what to do.
> But, I believe this is what git rebase is mainly used for. You can rebase
> your branch against an updated master and (I'm guessing) make your changes
> look like a single diff. Some people don't like that as it changes history,
> others do like it and say yes, that's the point - clean up the history so
> the commit log isn't full of tiny changes that were all made in order to
> effect some change (i.e., address a given ticket/issue).
This is actually called a "squash" in Git terminology - Git has an
option called "--squash" for the "merge" command which precisely do
that. This is, FYI, part of the merge policy used by projects like
PostgreSQL for example 
I'm not sure we can exactly say it changes the history: a brand new
commit is actually created, which is the sum of all the commits from the
branch which is merged, but as I see it, it's as if someone else
commited this new feature, and branches become completely throwable in
I let the Git manual explain the squash feature (extract from "git help
merge"; the second sentence is probably the most useful):
Produce the working tree and index state as if a real merge
happened (except for the merge information), but do not actually
make a commit or move the HEAD, nor record $GIT_DIR/MERGE_HEAD
to cause the next git commit command to create a merge commit.
This allows you to create a single commit on top of the current
branch whose effect is the same as merging another branch (or
more in case of an octopus).
With --no-squash perform the merge and commit the result. This
option can be used to override --squash.
> I'm REALLY far from being a git pro, so someone else should confirm/correct
More information about the Twisted-Python