Subject: Re: first parent, commit graph layout, and pull merge direction

From: "Holger Hellmuth (IKS)" <[email-masked]>
Date: Fri, 24 May 2013 17:05:26 +0200

Am 24.05.2013 15:42, schrieb Andreas Krey:
> On Fri, 24 May 2013 11:29:00 +0000, Holger Hellmuth (IKS) wrote:
> ...
>> Here is an idea (probably already discussed in the long history of git):
>> 1) the branch name is recorded in a commit (for merges the branch that
>> is updated)
>
> The branch name is almost completely meaningless. I could just
> do my feature in my local master and never have a different name.

In which case parent switching in the commit wouldn't help you either.

But even you could keep your master always on the left side of gitk if 
you deem it special. And you could keep longer running cooperative 
branches (the main develop and the release branch of your project for 
example) in a seperate lane.

Depending on your use of branches many branches won't get any ordering, 
but at a minimum important branches can easily be "highlighted".

> Or commit something onto tmp that I then fast-forward into my
> (properly named) feature branch.

Yes, but then you would see a feature branch in its expected column in 
gitk and you would also see (even years later) that it didn't start as a 
feature but later was made into one. Cues like this help to remember 
what happened even if you forgot to mention them in the commit message

>> 2) unique identifier of repository is recorded in commit (optional)
>
> That is pure noise (in my workflow).

It is important to differentiate between branches of the same name in 
different repositories. For example if your project has a central 
repository with master getting all the release stuff you want to sort 
that master differently than your own master.

The unique identifier might be just a random number or string created at 
init time of the repo.

>> 3) simple configurable ordering and/or coloring scheme in gitk based on
>> committer,branch name and repo (with wildcards).
>
> Ok, gitk could use some features. :-)

Without additional information about the commit history gitk can do 
exactly what it does now.

> ...
>> Is this a bad idea or just no one did it yet?
>
> Possibly not bad (hg does parts of it), but un-git-ish?

Don't know. No CVS does branches as good as git. But then it drops that 
information which depending on development style could be useful or not.
Not that useful for people who keep their history clean, a lot for 
people who don't.