b'\n_START_ARTICLE_\nGit\n_START_PARAGRAPH_\nGit er et versjonskontrollsystem, en type programvare. Det kjennetegnes ved \xc3\xa5 v\xc3\xa6re distribuert og ikke mappehierarki-basert (se Egenskaper). Et viktig designkriterium for Git var hastighet ved sammenfletting (merging). Git ble p\xc3\xa5begynt av Linus Torvalds, men p\xc3\xa5 et tidlig tidspunkt overtatt av Junio Hamano, som n\xc3\xa5 leder videre utvikling og vedlikehold. Blant andre distribuerte versjonskontrollsystemer kan nevnes Mercurial, som ble startet omtrent samtidig med Git, og Bitkeeper, en kommersiell forl\xc3\xb8per som var den viktigste inspirasjonskilden for Git.\n_START_SECTION_\nBegreper og kommandoer\n_START_PARAGRAPH_\nSelv om git funksjonalitet er tilgjengelig vha deskto-app (SourceTree), tillegsfunskjonalitet p\xc3\xa5 popul\xc3\xa6re editorer (Visual Studio, IntelliJ), intranett webapp (bitbucket), til og med internet web sites (github) har den f\xc3\xb8rst hatt en kommandospr\xc3\xa5k._NEWLINE_I Git, en tilfeldig mappe kan gj\xc3\xb8res om til et git repository (med git kommandoene init eller clone). Da etableres det en undermappe med navn .git. I denne lagres kopier med historikk av filsett i mappen over og i dets undermapper (Det stabile settet kalles Master, de midlertidige kalles branch). Filene utenfor .git mappen arbeider man med (det settet man jobber p\xc3\xa5 kalles Head). _NEWLINE_Man kan ha filer som git holder \xc3\xb8ye med (tracked), andre filer fortsatt ikke under versjonskontroll (untracked, kan legges til med add kommando, flyttes med mv, slettes med rm), og det kan v\xc3\xa6re filer git ikke skal bry seg om (nevnt i filen .gitignore).  Endringer i filene  oppdages av git (modified) og kan klargj\xc3\xb8res (staged -med add) og lagres i historikken (ved \xc3\xa5 ta en kommentert snapshot med commit), Det kan s\xc3\xb8kes etter tekst  i mappen (grep)._NEWLINE_Versjoner identifiseres med f\xc3\xb8rste 6-7 siffre av en hashverdi returnert av commit. Endringer kan listes (status, log), vises (diff), forkastes (reset, revert, clean), forfatter kan identifiseres (blame), branch/filsett i fokus kan byttes med kopier i repositoriet (checkout), minneverdige versjoner kan gis navn (tag),_NEWLINE_Synkronisering mellom disse lokale branch/filsett utf\xc3\xb8res (merge, rebase). Disse kan tenkes som leveranser mellom uavhengige repositorier. Hvis man har lokale endringer som ikke \xc3\xb8nskes tapt pga en synkronisering kan man lagre disse midlertidig (stash) og hente tilbake (pop). Synkronisering med sett i fjerne repositorier (origin) kan utf\xc3\xb8res (fetch, remote add, pull, pull-request, push), patch kan applikeres (am).\n_START_SECTION_\nEksempel p\xc3\xa5 bruk\n_START_PARAGRAPH_\nF\xc3\xb8lgene avsnitt gir eksempler p\xc3\xa5 hvordan man kan bruke git via kommandolinje / terminal._NEWLINE_Den tar utgangspunkt i at man med kommandolinje har navigert frem til en mappe som inneholder en fil ved navn "kildekode.cpp"._NEWLINE_git init_NEWLINE_Lager et nytt git respository i mappen du kj\xc3\xb8rer kommandoen. Det er her alle kildefiler og versjoner av disse lagres. _NEWLINE_git add kildekode.cpp_NEWLINE_Legger til filen kildekode.cpp midlertidig til versjonen av prosjektet du jobber p\xc3\xa5. Hvis dette ikke er oppgitt vil du dytte opp til master versjonen (master branch). _NEWLINE_git commit -m "lagt til f\xc3\xb8rste kildekodefil"_NEWLINE_Gj\xc3\xb8r en commit p\xc3\xa5 endringer og opprettelse av nye filer til versjonen av prosjektet du jobber p\xc3\xa5. Det vil si at endringene blir lagt til permanent og at _NEWLINE_disse dukker opp i loggen med meldingen "lagt til f\xc3\xb8rste kildekodefil". _NEWLINE_git log --graph_NEWLINE_Viser loggen til git prosjektet som er i mappen du befinner deg i. Flagget "--graph" lager en grafisk illustrasjon _NEWLINE_av hvordan de forskjellige versjonene av prosjektet er flettet sammen. _NEWLINE_Loggen inneholder ogs\xc3\xa5 hvem som utf\xc3\xb8rte commiten, og n\xc3\xa5r dette ble gjort.'