Giter Site home page Giter Site logo

gitt's Introduction

Git In The Trenches

Git In The Trenches, or GITT is designed to be a book that focusses on teaching people to use Git by associating with scenarios that are experienced by a fictional company called Tamagoyaki Inc. Through reading about their day to day lives, the reader will learn not only how to use Git, but why version control systems are important and how to implement them within an organisation.

Book Contents

The summary below shows a list of already complete chapters and items which are pending. GITT now covers all 21 of the most commonly used Git commands.

  1. Analysing VCS requirements
  2. Initialising a repo, adding files, removing files, committing, resetting
  3. Logging, diffing, tagging, viewing historical data
  4. Branching, merging, deleting branch, recovering branch, dealing with conflicts
  5. GUI usage
  6. Stashing, Cloning
  7. Networking, Rebasing
  8. Patching, Bisecting, Filterbranching, subtree, modules

After Hours

  1. History of version control, svn, cvs, git
  2. Simple Git internals, how commits are stored
  3. Indepth look at diff and how tags are stored
  4. Merging algorithms
  5. Splitting up commits, line by line, hunk committing
  6. Push and pull settings, reference discussion
  7. Instaweb
  8. Hooks

Building the Book

GITT is written using the LaTeX language to be able to generate the PDFs easily and without artifacts. If you wish to read GITT whilst it is in development phase, you have 3 options.

  1. Read the LaTeX source, which really isn't as bad as it sounds
  2. Use make pdf to use latex to build the pdf, you will need to have pdflatex installed for this
    • For ubuntu users, run sudo apt-get install texlive-latex-base texlive-latex-extra texlive-fonts-recommended texlive-xetex ttf-linux-libertine to get xelatex and the other files required to build
  3. An older PDF version of the book can be found here

Publishing

It is the intention of the author to make the book available freely online, and eventually offer a printed version via a self publishing site online. If someone out there thinks the book would do well to be published by a proper print publisher and can help make this happen, please get in contact. However the book will remain free online no matter what.

Contributing

The GITT project would love for people to branch off and make alterations to the text, or even start to create translations. Currently the book is written in LaTeX, but it isn't hard to learn. You can see the source files in plain text and edit them quite easily. Also, we are looking for situations in which you may have found yourself whilst using Git, whether you managed to resolve them or not. GITT is rather scenario based sometimes, so we need situations in which to place the employees at Tamagoyaki Inc. Spelling fixes are always welcome, as are general comments on the text itself.

Anyone who contributes will be added to the Acknowledgement section if they wish it. If I miss you out, please do not be offended, just nudge me gently :)

gitt's People

Contributors

ali1234 avatar cbx33 avatar dsas avatar godbyk avatar gumnos avatar jonasbb avatar robinro avatar rpavlik avatar snaewe avatar wildmichael avatar zigarn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gitt's Issues

man git log doesn't work on Mac OS X

On Mac OS X (Yosemite at least), one must use man git-log. At first I thought this was a bug in your book, but man git log does work on Linux. It might be handy to mention the difference or swap it to man git-log since Linux (Debian 8.1 at least) supports both styles.

.mobi Version Skips Around

I downloaded the .mobi version, and installed on Kindle. There seems to be a problem with the flow. I will start a chapter, for instance, Chapter 1, page through it and then suddenly it pauses for a long time, then skips to the end of the book. The problem seems to be the callback sections. When I have more time I'll go back and make notice of where the skip-ahead occurs; it isn't just in one chapter, but at spots throughout the book.

Building HTML version

I'd like to add an HTML build to my autobuilder, but I can't quite figure it out entirely. A few possible issues/bugs:

  • I see that make site and make web both exist, and are different - is this a bug?
  • clean doesn't depend on cleansite
  • cleansite doesn't depend on cleanimages
  • site doesn't depend on the python script

I've addressed these in an improved makefile - will be pull requested soon.

Also...

  • In the generated site folder, the only link that works is the "read now", and the "slide1" image is missing.
  • It looks like the python script is supposed to replace the next/prev placeholders, but it doesn't seem to be doing that.

I've uploaded the "site" directory to my server space from the autobuilder for now - you're welcome to take a look and see if there's some improvement that can be made.

http://www.hci.iastate.edu/~rpavlik/doxygen/git-in-the-trenches/site/

Can't make pdf on Linux Mint x64

After install latex dependencies on Linux Mint Helena - x64 Edition, I can't make pdf.
After some processing shell execution stopped on prompt.

Lines before ? prompt:

pdfTeX warning: pdflatex (file ./images/fcover-new.pdf): PDF inclusion: Page Gr
oup detected which pdfTeX can't handle. Ignoring it.
{/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}>] 2
(/usr/share/texmf-texlive/tex/latex/microtype/mt-cmr.cfg)
(/usr/share/texmf/tex/latex/lm/omllmm.fd)
(/usr/share/texmf/tex/latex/lm/omslmsy.fd)
(/usr/share/texmf/tex/latex/lm/omxlmex.fd) [3] [4] (./gitt.toc [5] [6] [7]
Overfull \hbox (1.5877pt too wide) detected at line 110
\OT1/lmss/bx/n/12 117

Overfull \hbox (1.5877pt too wide) detected at line 113
\OT1/lmss/bx/n/12 127

Overfull \hbox (1.5877pt too wide) detected at line 127
\OT1/lmss/bx/n/12 147

Overfull \hbox (1.5877pt too wide) detected at line 132
\OT1/lmss/bx/n/12 151
[8]
Overfull \hbox (1.5877pt too wide) detected at line 149
\OT1/lmss/bx/n/12 173

Overfull \hbox (1.5877pt too wide) detected at line 153
\OT1/lmss/bx/n/12 181

Overfull \hbox (1.5877pt too wide) detected at line 166
\OT1/lmss/bx/n/12 201

Overfull \hbox (1.5877pt too wide) detected at line 169
\OT1/lmss/bx/n/12 203
) [9] (./intro.tex [10]
! Undefined control sequence.
\memUChead
{\f@rhdr }
l.3 \chapter{Introduction}

?

Spelling Issue

I think you have a spelling issue in afterhoures1.tex

In line 45 there is standing "[...]On June 16th, the relese of the Linux kernel[...]". Shouldn't it be release instead of relese?

Easy way to build NICE html

Is there a nice easy way to build html from this? That I could style with CSS? Or should I just write my own converter? latex2html didn't seem to do a good job last time. Part of it was because of the .pdf images. I could make it so that it looks for .png whenever it sees .pdf. In a python script or something, but would prefer something a little more automatic.

TeX percent-sign doesn't translate to HTML

In Chapter 1, the source reads "This is all due to the fact that Git does 99% of all of its operations locally." But the generated HTML truncates at that token, leaving the text as "This is all due to the fact that Git does 99When a repository is cloned..." I trust that the other outputs correctly display the "99%" as desired, so it may be something in your TeX-to-HTML converter.

Including fcover.pdf in gitt.pdf output

There is a nice cover for GITT in images/source/fcover.pdf.

The current way to include this in the output is with the makefile, but this breaks the links and is unnecessary because LaTeX can handle this also.

There are multiple ways how to include it:

  • The first page is fcover.pdf, the third page is the old title.
  • The first page is fcover.pdf, the third page is the old title but the old title gets page number 1.
  • The first page is fcover.pdf, the old title will be removed.

I prefer the first or the second way but the first at most.

Problem with page numbering at section start

On the begining page of Week 1 the page numbers are at the bottom middle of the page. In the following pages the numbers are on the top left or top right corner.

I think for a more consistent look of the book the bottom numbers should move to the top corners.

PS: Nice new testing design

wording correction

In the Introduction the last line says "With the introduction over, let’s first go through a quick setup guide and then find out why Tamagoyaki Inc even need a version control system in the first place."

This may be nit picking but shouldn't it say "even needs a version control system in the first place."?

Make fails

Any idea what's causing this?

> make
pdflatex gitt.tex
This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
entering extended mode
(./gitt.tex
LaTeX2e <2003/12/01>
Babel  and hyphenation patterns for american, french, german, ngerman, b
ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e
stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis
h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur
kish, ukrainian, nohyphenation, loaded.
(/usr/share/texmf/tex/latex/memoir/memoir.cls
Document Class: memoir 2004/04/05 v1.61 configurable document class
(/usr/share/texmf/tex/latex/memoir/mem12.clo)
(/usr/share/texmf/tex/latex/memoir/mempatch.sty))

******************************************************
Stock height and width: 597.50787pt by 421.10078pt
Top and edge trims: 0.0pt and 0.0pt
Page height and width: 597.50787pt by 421.10078pt
Text height and width: 490.5pt by 305.0pt
Spine and edge margins: 61.45805pt and 54.34486pt
Upper and lower margins: 54.34486pt and 52.66301pt
Headheight and headsep: 14.0pt and 19.8738pt
Footskip: 30.0pt
Columnsep and columnseprule: 10.0pt and 0.0pt
Marginparsep and marginparwidth: 7.0pt and 51.0pt
******************************************************

(/usr/share/texmf/tex/latex/graphics/graphicx.sty
(/usr/share/texmf/tex/latex/graphics/keyval.sty)
(/usr/share/texmf/tex/latex/graphics/graphics.sty
(/usr/share/texmf/tex/latex/graphics/trig.sty)
(/usr/share/texmf/tex/latex/graphics/graphics.cfg)
(/usr/share/texmf/tex/latex/graphics/pdftex.def)))
(/usr/share/texmf/tex/latex/float/float.sty

! LaTeX Error: Command \newfloat already defined.
               Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H   for immediate help.
 ...                                              
                                                  
l.68       {}}}
               
? 

Untitled

Need some negatives in history for git :)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.