# Git Presentation This is a presentation about Git. ## Download If you just want to download a copy of the presentation, you can do so [here](https://git.jonathanh.co.uk/attachments/b2f284a7-d9fe-4dda-b8e4-485d79cdfa6e). ## Build To build it, you will need make, pdflatex and ansi-to-svg and inkscape. To build the main pdf, run: ```bash make main.pdf ``` To build with speaker notes: ```bash make with-notes.pdf ``` To only build the speaker notes: ```bash make only-notes.pdf ``` ## Auto Images The build system will generate certain types of graphics for the presentation as part of the build system. The resultant files will always go in the `auto-images` folder. As a result, this folder is not under version control. In latex, all you need to do is ```latex \includegraphics[]{auto--} ``` The types are documented below: ### XKCD What is a presentation without an xkcd comic? ```latex \includegraphics[]{auto-xkcd-.png} ``` If the above is included in the latex document, the XKCD comic with the specified ID will be downloaded and embedded in the pdf. ### Shell Output I am still not aware of aware of a reliable way to include ansi coloured shell output into a latex document. I also don't want to include loads of high-res screenshots in my Git repo. The work around I have come up with is to save the raw ansi output to a wile in `shell-output`. This normally involves forcing an application to output in colour: ```bash git -c color.status=always status > shell-output/git-status.out ``` ```latex \includegraphics[]{auto-shell-.pdf} %E.g. \includegraphics[]{auto-shell-git-status.pdf} ``` The build system will convert the ansi output into an embeddable PDF that LaTeX will embed. ### Online images In order to download an image from the internet and embed it in the presentation, you need do provide the extension and the base64 encoded URL. ```latex \includegraphics[]{auto-download-.png} ```