* A Visual Git Reference
@ 2010-02-08 19:34 Mark Lodato
2010-02-08 19:51 ` Peter Baumann
` (4 more replies)
0 siblings, 5 replies; 18+ messages in thread
From: Mark Lodato @ 2010-02-08 19:34 UTC (permalink / raw)
To: git list
All,
I put together a "Visual Git Reference" containing visualizations of
the most common git commands, for people who prefer to see images over
text. It is designed as a reference, not a tutorial, so readers need
to have some amount of experience before the page will become useful.
URL: http://marklodato.github.com/visual-git-guide/
Git repo: http://github.com/marklodato/visual-git-guide/
If you have any feedback or suggestions, please let me know!
Cheers,
Mark
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:34 A Visual Git Reference Mark Lodato
@ 2010-02-08 19:51 ` Peter Baumann
2010-02-08 20:21 ` Mark Lodato
2010-02-08 21:57 ` Daniel Barkalow
` (3 subsequent siblings)
4 siblings, 1 reply; 18+ messages in thread
From: Peter Baumann @ 2010-02-08 19:51 UTC (permalink / raw)
To: Mark Lodato; +Cc: git list
On Mon, Feb 08, 2010 at 02:34:21PM -0500, Mark Lodato wrote:
> All,
>
> I put together a "Visual Git Reference" containing visualizations of
> the most common git commands, for people who prefer to see images over
> text. It is designed as a reference, not a tutorial, so readers need
> to have some amount of experience before the page will become useful.
>
> URL: http://marklodato.github.com/visual-git-guide/
> Git repo: http://github.com/marklodato/visual-git-guide/
>
> If you have any feedback or suggestions, please let me know!
I have only glanced over the page, but it seems you have made the time
flow from right to left. Is this intentional? I find it not very intuitive.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:51 ` Peter Baumann
@ 2010-02-08 20:21 ` Mark Lodato
2010-02-08 20:34 ` Jon Seymour
2010-02-09 0:09 ` Johannes Schindelin
0 siblings, 2 replies; 18+ messages in thread
From: Mark Lodato @ 2010-02-08 20:21 UTC (permalink / raw)
To: Peter Baumann; +Cc: git list
On Mon, Feb 8, 2010 at 2:51 PM, Peter Baumann <waste.manager@gmx.de> wrote:
> I have only glanced over the page, but it seems you have made the time
> flow from right to left. Is this intentional? I find it not very intuitive.
Good call. I don't know why I did that. I just pushed a new version
that goes left-to-right.
Thanks,
Mark
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 20:21 ` Mark Lodato
@ 2010-02-08 20:34 ` Jon Seymour
2010-02-08 20:57 ` Mark Lodato
2010-02-09 0:09 ` Johannes Schindelin
1 sibling, 1 reply; 18+ messages in thread
From: Jon Seymour @ 2010-02-08 20:34 UTC (permalink / raw)
To: Mark Lodato; +Cc: Peter Baumann, git list
G'day Mark,
Nice diagrams. You might want to change the arrows on the diffs to be
consistently in direction of the forward diff.
jon.
On Tue, Feb 9, 2010 at 7:21 AM, Mark Lodato <lodatom@gmail.com> wrote:
> On Mon, Feb 8, 2010 at 2:51 PM, Peter Baumann <waste.manager@gmx.de> wrote:
>> I have only glanced over the page, but it seems you have made the time
>> flow from right to left. Is this intentional? I find it not very intuitive.
>
> Good call. I don't know why I did that. I just pushed a new version
> that goes left-to-right.
>
> Thanks,
> Mark
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 20:34 ` Jon Seymour
@ 2010-02-08 20:57 ` Mark Lodato
0 siblings, 0 replies; 18+ messages in thread
From: Mark Lodato @ 2010-02-08 20:57 UTC (permalink / raw)
To: Jon Seymour; +Cc: git list
On Mon, Feb 8, 2010 at 3:34 PM, Jon Seymour <jon.seymour@gmail.com> wrote:
> Nice diagrams. You might want to change the arrows on the diffs to be
> consistently in direction of the forward diff.
Thanks. You're right, the da985->b325c was the only one that made
sense - the rest were reversed. Is this what you meant? I just
pushed this change, so it should be fixed.
Mark
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:34 A Visual Git Reference Mark Lodato
2010-02-08 19:51 ` Peter Baumann
@ 2010-02-08 21:57 ` Daniel Barkalow
2010-02-09 0:18 ` Mark Lodato
2010-02-10 3:40 ` John J. Franey
2010-02-10 5:20 ` Jeff King
` (2 subsequent siblings)
4 siblings, 2 replies; 18+ messages in thread
From: Daniel Barkalow @ 2010-02-08 21:57 UTC (permalink / raw)
To: Mark Lodato; +Cc: git list
On Mon, 8 Feb 2010, Mark Lodato wrote:
> All,
>
> I put together a "Visual Git Reference" containing visualizations of
> the most common git commands, for people who prefer to see images over
> text. It is designed as a reference, not a tutorial, so readers need
> to have some amount of experience before the page will become useful.
>
> URL: http://marklodato.github.com/visual-git-guide/
> Git repo: http://github.com/marklodato/visual-git-guide/
>
> If you have any feedback or suggestions, please let me know!
The "3-way merge" node should graphically distinguish the base from the
two sides, rather than having all three just go in. The "3-way merge"
operation is tricky to understand visually without some sort of "split and
rejoin, with specific points" thing.
Also, it would probably be worth showing the use of the index in the
process of a 3-way merge: all three versions go into the blue box, and a
combination (with conflict markers) goes into the pink box; the user
cleans up the pink box, and replaces the 3-part blue box content with the
cleaned-up single result content; then the commit gives the diagram you
have for "git merge other".
I think you should introduce the detached HEAD situation early; right
after "git checkout HEAD~ files", it would be worth showing "git checkout
HEAD~". It's pretty common for people in the "technical user" part of the
kernel community to use git to browse history and test different commits,
and never do a commit at all. This is a pretty common mode across many
version control systems (e.g., "cvs checkout -D yesterday"), and nothing
unexpected happens if you don't try to commit while doing it. In fact, you
could show tracking down a bug introduced between maint and master by
checking out c10b9 and then da985.
Then, later, you can bring up the fact that you can actually do commits in
that situation, and show how that works. That part is the part that's
novel and could potentially lead to people doing work and having it become
unreachable. Also, after commiting with a detached HEAD, the normal next
step is to create a new branch ("git checkout -b new-topic").
-Daniel
*This .sig left intentionally blank*
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 20:21 ` Mark Lodato
2010-02-08 20:34 ` Jon Seymour
@ 2010-02-09 0:09 ` Johannes Schindelin
1 sibling, 0 replies; 18+ messages in thread
From: Johannes Schindelin @ 2010-02-09 0:09 UTC (permalink / raw)
To: Mark Lodato; +Cc: git list
Hi,
to save you time: I added a link to the Git Wiki.
Ciao,
Dscho
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 21:57 ` Daniel Barkalow
@ 2010-02-09 0:18 ` Mark Lodato
2010-02-10 3:40 ` John J. Franey
1 sibling, 0 replies; 18+ messages in thread
From: Mark Lodato @ 2010-02-09 0:18 UTC (permalink / raw)
To: Daniel Barkalow; +Cc: git list
On Mon, Feb 8, 2010 at 4:57 PM, Daniel Barkalow <barkalow@iabervon.org> wrote:
> The "3-way merge" node should graphically distinguish the base from the
> two sides, rather than having all three just go in. The "3-way merge"
> operation is tricky to understand visually without some sort of "split and
> rejoin, with specific points" thing.
Yes, I'm not happy with the merge picture at all. As you said, it's
difficult to draw a nice picture for it that doesn't become too
complex. I'll have to think of a better way...
> Also, it would probably be worth showing the use of the index in the
> process of a 3-way merge: all three versions go into the blue box, and a
> combination (with conflict markers) goes into the pink box; the user
> cleans up the pink box, and replaces the 3-part blue box content with the
> cleaned-up single result content; then the commit gives the diagram you
> have for "git merge other".
My fear is making the graphic too complicated. That said, it may be
worth making separate graphics: a simple no-conflict case, and a more
complicated conflict case.
> I think you should introduce the detached HEAD situation early; right
> after "git checkout HEAD~ files", it would be worth showing "git checkout
> HEAD~". It's pretty common for people in the "technical user" part of the
> kernel community to use git to browse history and test different commits,
> and never do a commit at all. This is a pretty common mode across many
> version control systems (e.g., "cvs checkout -D yesterday"), and nothing
> unexpected happens if you don't try to commit while doing it.
Good point. At your suggestion, I moved up the detached HEAD section
and integrated part of it into the checkout section. You're right,
this does come up a lot, so I should cover it.
> In fact, you
> could show tracking down a bug introduced between maint and master by
> checking out c10b9 and then da985.
I may add a section on git bisect in the future.
> Then, later, you can bring up the fact that you can actually do commits in
> that situation, and show how that works. That part is the part that's
> novel and could potentially lead to people doing work and having it become
> unreachable. Also, after commiting with a detached HEAD, the normal next
> step is to create a new branch ("git checkout -b new-topic").
Done. Good idea.
Thanks for the feedback. If you have any other thoughts, I'd be glad
to hear them!
Mark
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 21:57 ` Daniel Barkalow
2010-02-09 0:18 ` Mark Lodato
@ 2010-02-10 3:40 ` John J. Franey
1 sibling, 0 replies; 18+ messages in thread
From: John J. Franey @ 2010-02-10 3:40 UTC (permalink / raw)
To: git
On Mon, 08 Feb 2010 16:57:12 -0500, Daniel Barkalow wrote:
> On Mon, 8 Feb 2010, Mark Lodato wrote:
>
>> All,
>>
>> I put together a "Visual Git Reference" containing visualizations of
>> the most common git commands, for people who prefer to see images over
>> text. It is designed as a reference, not a tutorial, so readers need
>> to have some amount of experience before the page will become useful.
>>
>> URL: http://marklodato.github.com/visual-git-guide/ Git repo:
>> http://github.com/marklodato/visual-git-guide/
>>
>> If you have any feedback or suggestions, please let me know!
>
> The "3-way merge" node should graphically distinguish the base from the
> two sides, rather than having all three just go in. The "3-way merge"
> operation is tricky to understand visually without some sort of "split
> and rejoin, with specific points" thing.
>
> Also, it would probably be worth showing the use of the index in the
> process of a 3-way merge: all three versions go into the blue box, and a
> combination (with conflict markers) goes into the pink box; the user
> cleans up the pink box, and replaces the 3-part blue box content with
> the cleaned-up single result content; then the commit gives the diagram
> you have for "git merge other".
>
I often have difficulty trying to internally visualize a mapping from the
commits of a merge to the panes of a kdiff3 session. I have special
difficulty keeping straight which commit is the LOCAL and which is the
REMOTE. Looking at your visual guide, I can almost see a kdiff session
in this section on three way merge where each commit sits in one of the
panes. b325c in upper left, ed489 in upper middle, and 33104 in upper
right, "Working Directory" on the bottom pane. Not sure if that graphic
would be useful to anyone else. Thought I'd throw it in for grins.
I learned a few things from your guide. I've been using git for about a
year and a half. Thanks.
John
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:34 A Visual Git Reference Mark Lodato
2010-02-08 19:51 ` Peter Baumann
2010-02-08 21:57 ` Daniel Barkalow
@ 2010-02-10 5:20 ` Jeff King
2010-03-17 19:03 ` Scott R. Godin
2010-02-10 17:02 ` Dilip M
2010-02-18 1:17 ` Michael Witten
4 siblings, 1 reply; 18+ messages in thread
From: Jeff King @ 2010-02-10 5:20 UTC (permalink / raw)
To: Mark Lodato; +Cc: git list
On Mon, Feb 08, 2010 at 02:34:21PM -0500, Mark Lodato wrote:
> I put together a "Visual Git Reference" containing visualizations of
> the most common git commands, for people who prefer to see images over
> text. It is designed as a reference, not a tutorial, so readers need
> to have some amount of experience before the page will become useful.
>
> URL: http://marklodato.github.com/visual-git-guide/
> Git repo: http://github.com/marklodato/visual-git-guide/
>
> If you have any feedback or suggestions, please let me know!
This looks really awesome, thanks for doing it (though I'll admit I
threw up in my mouth a little when I saw you did all of the diagrams as
TeX. ;) ).
One of the projects I have wanted to do but never found time for is a
"Git Picture Glossary". I was intending to start with much simpler
concepts, like how the various object types relate, what a ref is, how a
symref differs, what a detached HEAD is, etc. And then move on to "here
is what happens when you branch", "here is what happens when you merge",
etc. Sort of like "Git for Computer Scientists", but organized as a
glossary, with each entry starting off with "to understand this, you
first need to understand entries X and Y", with links.
And it seems like what you have done is more or less the same thing,
except you skipped all of the really basic entries and went straight to
the action-oriented ones.
-Peff
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:34 A Visual Git Reference Mark Lodato
` (2 preceding siblings ...)
2010-02-10 5:20 ` Jeff King
@ 2010-02-10 17:02 ` Dilip M
2010-02-18 1:17 ` Michael Witten
4 siblings, 0 replies; 18+ messages in thread
From: Dilip M @ 2010-02-10 17:02 UTC (permalink / raw)
To: Mark Lodato; +Cc: git list
Hello Mark,
On Tue, Feb 9, 2010 at 1:04 AM, Mark Lodato <lodatom@gmail.com> wrote:
> All,
>
> I put together a "Visual Git Reference" containing visualizations of
> the most common git commands, for people who prefer to see images over
> text. It is designed as a reference, not a tutorial, so readers need
> to have some amount of experience before the page will become useful.
>
> URL: http://marklodato.github.com/visual-git-guide/
> Git repo: http://github.com/marklodato/visual-git-guide/
>
> If you have any feedback or suggestions, please let me know!
This is very helpful for git users...:) Thanks...
--
Dilip
Everyone is gifted - but some people never open their package!
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-08 19:34 A Visual Git Reference Mark Lodato
` (3 preceding siblings ...)
2010-02-10 17:02 ` Dilip M
@ 2010-02-18 1:17 ` Michael Witten
2010-02-18 1:39 ` Mark Lodato
2010-02-18 1:39 ` Jeff King
4 siblings, 2 replies; 18+ messages in thread
From: Michael Witten @ 2010-02-18 1:17 UTC (permalink / raw)
To: Mark Lodato; +Cc: git
On Mon, Feb 8, 2010 at 1:34 PM, Mark Lodato <lodatom@gmail.com> wrote:
> All,
>
> I put together a "Visual Git Reference" containing visualizations of
> the most common git commands, for people who prefer to see images over
> text.
It would be great if you could output either larger images or
something that is resolution-independent like SVG.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-18 1:17 ` Michael Witten
2010-02-18 1:39 ` Mark Lodato
@ 2010-02-18 1:39 ` Jeff King
1 sibling, 0 replies; 18+ messages in thread
From: Jeff King @ 2010-02-18 1:39 UTC (permalink / raw)
To: Michael Witten; +Cc: Mark Lodato, git
On Wed, Feb 17, 2010 at 07:17:20PM -0600, Michael Witten wrote:
> On Mon, Feb 8, 2010 at 1:34 PM, Mark Lodato <lodatom@gmail.com> wrote:
> > All,
> >
> > I put together a "Visual Git Reference" containing visualizations of
> > the most common git commands, for people who prefer to see images over
> > text.
>
> It would be great if you could output either larger images or
> something that is resolution-independent like SVG.
Try
http://marklodato.github.com/visual-git-guide/index-svg.html
-Peff
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-18 1:17 ` Michael Witten
@ 2010-02-18 1:39 ` Mark Lodato
2010-02-18 3:03 ` Michael Witten
` (2 more replies)
2010-02-18 1:39 ` Jeff King
1 sibling, 3 replies; 18+ messages in thread
From: Mark Lodato @ 2010-02-18 1:39 UTC (permalink / raw)
To: Michael Witten; +Cc: git
The first paragraph has a link to an SVG version of the page. It's
not the default since SVG support varies greatly between browsers.
Still, I'll consider making the images bigger.
Thanks,
Mark
On Wed, Feb 17, 2010 at 8:17 PM, Michael Witten <mfwitten@gmail.com> wrote:
> On Mon, Feb 8, 2010 at 1:34 PM, Mark Lodato <lodatom@gmail.com> wrote:
>> All,
>>
>> I put together a "Visual Git Reference" containing visualizations of
>> the most common git commands, for people who prefer to see images over
>> text.
>
> It would be great if you could output either larger images or
> something that is resolution-independent like SVG.
>
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-18 1:39 ` Mark Lodato
@ 2010-02-18 3:03 ` Michael Witten
2010-02-18 12:38 ` Tor Arvid Lund
2010-02-18 12:53 ` Tay Ray Chuan
2 siblings, 0 replies; 18+ messages in thread
From: Michael Witten @ 2010-02-18 3:03 UTC (permalink / raw)
To: Mark Lodato, Jeff King; +Cc: git
On Wed, Feb 17, 2010 at 7:39 PM, Jeff King <peff@peff.net> wrote:
> Try
>
> http://marklodato.github.com/visual-git-guide/index-svg.html
On Wed, Feb 17, 2010 at 7:39 PM, Mark Lodato <lodatom@gmail.com> wrote:
> The first paragraph has a link to an SVG version of the page. It's
> not the default since SVG support varies greatly between browsers.
Oh... :-D
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-18 1:39 ` Mark Lodato
2010-02-18 3:03 ` Michael Witten
@ 2010-02-18 12:38 ` Tor Arvid Lund
2010-02-18 12:53 ` Tay Ray Chuan
2 siblings, 0 replies; 18+ messages in thread
From: Tor Arvid Lund @ 2010-02-18 12:38 UTC (permalink / raw)
To: Mark Lodato; +Cc: Michael Witten, git
On Thu, Feb 18, 2010 at 2:39 AM, Mark Lodato <lodatom@gmail.com> wrote:
> The first paragraph has a link to an SVG version of the page. It's
> not the default since SVG support varies greatly between browsers.
Yes, it does :-)
For me (using Chrome 4 on windows), the SVG images are scaled a little
too big for the box that they are placed in, so the bottom and right
side is cropped.
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-18 1:39 ` Mark Lodato
2010-02-18 3:03 ` Michael Witten
2010-02-18 12:38 ` Tor Arvid Lund
@ 2010-02-18 12:53 ` Tay Ray Chuan
2 siblings, 0 replies; 18+ messages in thread
From: Tay Ray Chuan @ 2010-02-18 12:53 UTC (permalink / raw)
To: Mark Lodato; +Cc: Michael Witten, git
Hi,
On Thu, Feb 18, 2010 at 9:39 AM, Mark Lodato <lodatom@gmail.com> wrote:
> The first paragraph has a link to an SVG version of the page. It's
> not the default since SVG support varies greatly between browsers.
Chrome 4 gives some parsing errors for the SVG files.
Error: Problem parsing d=""
For example, line 5 of conventions.svg.
--
Cheers,
Ray Chuan
^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: A Visual Git Reference
2010-02-10 5:20 ` Jeff King
@ 2010-03-17 19:03 ` Scott R. Godin
0 siblings, 0 replies; 18+ messages in thread
From: Scott R. Godin @ 2010-03-17 19:03 UTC (permalink / raw)
To: git
On 02/10/2010 12:20 AM, Jeff King wrote:
> On Mon, Feb 08, 2010 at 02:34:21PM -0500, Mark Lodato wrote:
>
>> I put together a "Visual Git Reference" containing visualizations of
>> the most common git commands, for people who prefer to see images over
>> text. It is designed as a reference, not a tutorial, so readers need
>> to have some amount of experience before the page will become useful.
>>
>> URL: http://marklodato.github.com/visual-git-guide/
>> Git repo: http://github.com/marklodato/visual-git-guide/
>>
>> If you have any feedback or suggestions, please let me know!
>
> This looks really awesome, thanks for doing it (though I'll admit I
> threw up in my mouth a little when I saw you did all of the diagrams as
> TeX. ;) ).
*chuckle* on the otherhand I was quite intrigued to find out that TeX
was used to create all the graphics; especially after seeing all the
examples at http://www.texample.net/tikz/examples/all/date/
(BTW great work on the guide, too, even if I am chiming in a bit late to
this. still catching up to the news posts I'm behind on. augh.)
--
(please respond to the list as opposed to my email box directly,
unless you are supplying private information you don't want public
on the list)
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2010-03-17 19:03 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-08 19:34 A Visual Git Reference Mark Lodato
2010-02-08 19:51 ` Peter Baumann
2010-02-08 20:21 ` Mark Lodato
2010-02-08 20:34 ` Jon Seymour
2010-02-08 20:57 ` Mark Lodato
2010-02-09 0:09 ` Johannes Schindelin
2010-02-08 21:57 ` Daniel Barkalow
2010-02-09 0:18 ` Mark Lodato
2010-02-10 3:40 ` John J. Franey
2010-02-10 5:20 ` Jeff King
2010-03-17 19:03 ` Scott R. Godin
2010-02-10 17:02 ` Dilip M
2010-02-18 1:17 ` Michael Witten
2010-02-18 1:39 ` Mark Lodato
2010-02-18 3:03 ` Michael Witten
2010-02-18 12:38 ` Tor Arvid Lund
2010-02-18 12:53 ` Tay Ray Chuan
2010-02-18 1:39 ` Jeff King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).