HTML TeX Other
Latest commit 48ff7dd Jan 31, 2017 @MarkLodato committed on GitHub Merge pull request #51 from ewypych/master
add walkthrough polish translation
Permalink
Failed to load latest commit information.
.gitignore perform automatic detection of SVG capabilities Mar 6, 2010
Makefile add index-pl to the Makefile Jan 15, 2017
README-ja.md link try. Oct 14, 2010
README.md Minor cleanups after Polish translation addition. Jan 22, 2017
basic-usage-2.tex add 'git checkout HEAD' and 'git commit -a' Oct 3, 2011
basic-usage.tex Use a scaling factor for all sizes May 15, 2010
checkout-after-detached.tex remove vim modeline Mar 2, 2010
checkout-b-detached.tex Use a scaling factor for all sizes May 15, 2010
checkout-branch.tex remove vim modeline Mar 2, 2010
checkout-detached.tex remove vim modeline Mar 2, 2010
checkout-files.tex remove vim modeline Mar 2, 2010
cherry-pick.tex use loosely dashed lines instead of deltas Mar 11, 2010
commit-amend.tex add highlight for new commits / branches Mar 9, 2010
commit-detached.tex add highlight for new commits / branches Mar 9, 2010
commit-maint.tex add highlight for new commits / branches Mar 9, 2010
commit-master.tex add highlight for new commits / branches Mar 9, 2010
common.tex Use a scaling factor for all sizes May 15, 2010
conventions.tex Use a scaling factor for all sizes May 15, 2010
diff.tex Fix positioning of 'git diff b325c da985' arrow. Mar 4, 2016
index-de.html links to pl were added to the indexes Jan 15, 2017
index-en.html add walkthrough polish translation Jan 30, 2017
index-es.html links to pl were added to the indexes Jan 15, 2017
index-fr.html links to pl were added to the indexes Jan 15, 2017
index-it.html links to pl were added to the indexes Jan 15, 2017
index-ja.html links to pl were added to the indexes Jan 15, 2017
index-ko.html links to pl were added to the indexes Jan 15, 2017
index-pl.html add walkthrough to the content table Jan 31, 2017
index-pt.html links to pl were added to the indexes Jan 15, 2017
index-ru.html links to pl were added to the indexes Jan 15, 2017
index-sk.html links to pl were added to the indexes Jan 15, 2017
index-vi.html links to pl were added to the indexes Jan 15, 2017
index-zh-cn.html links to pl were added to the indexes Jan 15, 2017
index-zh-tw.html links to pl were added to the indexes Jan 15, 2017
index.html links to pl were added to the indexes Jan 15, 2017
merge-ff.tex remove vim modeline Mar 2, 2010
merge.tex Use a scaling factor for all sizes May 15, 2010
publish publish: back up and restore old index; use add -f Feb 8, 2010
rebase-onto.tex use loosely dashed lines instead of deltas Mar 11, 2010
rebase.tex use loosely dashed lines instead of deltas Mar 11, 2010
reset-commit.tex remove vim modeline Mar 2, 2010
reset-files.tex remove vim modeline Mar 2, 2010
reset.tex remove vim modeline Mar 2, 2010
translate-en.html use https to get cc icon to prevent warning in client Jun 25, 2015
visual-git-guide.css Add Walkthrough section to English guide. Jan 30, 2017
visual-git-guide.js Turn on Google Analytics. Oct 4, 2013

README.md

A Visual Git Reference

The goal of this website is to be a concise, visual reference for how git commands work. I often draw pictures like this on a whiteboard for my colleagues, so I figured I would make a nice electronic version once and for all.

Implementation

I chose to draw the images using TeX and PGF/TikZ. I originally tried using Graphviz, but unfortunately there is no way to tell it how to lay out the graph exactly. Using TikZ, I was able to create a domain-specific language to represent commit graphs, and I think the result turned out quite well.

All of the common macros are stored in common.tex. Each image source includes this file. To see an example of how to use these macros, look at commit-master.tex.

To generate the image files, I first create PDFs using pdflatex, and from there I create SVGs and PNGs using pdf2svg and convert, respectively.

Building from Source

First, the following must be installed:

sudo apt-get install texlive texlive-fonts-extra pdf2svg imagemagick

Then, build the images:

make

Finally, create the gh-pages branch:

make gh-pages

License

Copyright © 2010, Mark Lodato. Japanese translation © 2010, Kazu Yamamoto. Korean translation © 2011, Sean. Russian translation © 2012, Alex Sychev. French translation © 2012, Michel Lefranc. Chinese translation © 2012, wych. Spanish translation © 2012, Lucas Videla. Italian translation © 2012, Daniel Londero. German translation © 2013, Martin Funk. Vietnamese translation © 2013, Hoat Le. Slovak translation © 2013, Ľudovít Lučenič. Portuguese translation © 2014, Gustavo de Oliveira. Traditional Chinese translation © 2015, Peter Dave Hello. Polish translation © 2017, Emil Wypych.

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.