----- Original Message ----- 
  From: Michael Gersten 
  To: git-users@googlegroups.com 
  Sent: Saturday, February 07, 2015 12:47 AM
  Subject: [git-users] I'm looking for a GUI that displays branches properly

  I want a GUI for git that displays branches properly. Even if this is the 
only function of this program, if it allows me to see the branching structure 
accurately, then I can use other GUI's once I know what's what.

  Here's what I do NOT mean: Every GUI that I've used thinks that a branch is 
the LAST point of the branch, and that the "main line" of development is 
unchanged if I'm just committing to the end of a branch.

  Here's a sample of what I do not want:

  Note the following:
  1. There is a commit on origin/master several days later. It shows as a 
branch, rather than as the main line.
  2. The "fded" commit (about 5 down from the top) was where I made the branch 
for "limonite-placer"
  3. The "bec1" commit (just under that) was adding a new file in (it's the 
same one that was added in the origin/master change), before the 

  Now, here's a sample of what I do want:

  So as soon as a branch is made, it shows as being different.


  Meanwhile, I'd like to get information on re-writing history, and this is a 
really good example.
  The odd behavior comes from a github gist that was created by me, had several 
versions updated on the github site (the bottom commits), forked by my 
co-worker, and improved (the three commits made in the middle), and then I 
checked out a local clone from that (gist ID 2aec26bc01189ea4b310). Since I 
wanted to push my updates, and it was forked from my original (gist ID 
5e037df5b5c9209885d5), I updated the origin URL in .git/config. I can, in fact, 
see updates on my gist -- note that origin/master shows an update made from the 
web interface -- but I have no idea if this messes up the history, nor how to 
use rebase to edit the history if it turns out to be needed. 

Some of your pictures did not make it through the email system.

I think you have a misunderstanding about the nature of "Distributed" VCS 
operation. In particular, the fact that a DVCS is meant to allow individuals to 
keep working when not connected to some central server of the (allegedly) 
golden version. 

Thus you CANNOT (when not connected) ever see any changes others have made to 
their branches, nor changes that others have pushed to the various servers 
(because we are not connected..). The normal graphs show the status (of 
remotes) as last seen, not as they might be if we had a connection.

The power of git is that it allows that separated view. This is usually 
anathema to those who have been brought up with corporate managed central 
server views. 

Ultimately the historic idea of a 'master' [1] has had its day. What you (and 
others) have is a copied artefact which has a verified signature (sha1 in git's 
case), which some social convention designates a specific signature as their 
'blessed one'. In a real working environment the 'master' is forever changing 
anyway, so it wasn't that blessed with perfection ;-) 

The shift of mental model can be hard, very hard, and even if you are taking it 
on board because you see its power (and disn't like the old systems), it can 
still trip you up every now and then. [Usually though lack of effective 
terminology - see the confusions between the levels of abstraction around 
staging area/index/cache/object store..]

It takes a while, a few re-reads of the books and manuals, and some practice & 
experimentation, to unwind the old expectation and rework the productive flows.


[1] the term 'master' pre-dates the Titanic and referred to the 'master 
drawings'. These were drawn on kaolin and linen drawing sheets (like linoleum) 
with India ink. They had to be kept flat, and dry and rarely handled. But 
without them, and the information they contained, nothing could be made. 

So followed a great administrative rigmarole of tracing and blue-prints, 
requests for changes, bundling of approved changes, before finally the master 
could be 'touched' and updated (if the bottle of ink was spilt over it, all was 
lost!). Now we can copy a 'master' at zero cost in zero time, and check it's 
veracity in an instant. But the mind set of "The Master" is still with us like 
a ball and chain.

You received this message because you are subscribed to the Google Groups "Git 
for human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to git-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to