----- Original Message ----- From: Michael Gersten To: [email protected] 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 adjusting/tuning. 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. -- Philip [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 [email protected]. For more options, visit https://groups.google.com/d/optout.
