Med versionshantering menas här att en mapp eller fil's innehåll kan finnas i olika versioner. Det är möjligt och också vanligt att backa till tidigare version om så behövs av någon anledning.
http://git-scm.com/download
(installera) Senaste release 2.14.1 (2017-08-04)- Skapa mappen
Mina Repos
i filsystemet - Skapa mappen
git_lab
inutiMina Repos
- Högerklicka mappen och välj
Git Bash Here
git config --global user.name "johansundstrom"
- Tillägget --global ger åtkomst i alla projektmappargit config --global user.email "johan.sundstrom@mdh.se"
git config --global color.ui auto
- Färg UIgit config --list
Listar konfigurering
- Med
cd <mapp>
ochmkdir <ny mapp>
gå till lämplig plats i filsystemet (Mina dokument/proj) - Sänd
ls
(list) konstatera att det är tomt - Sänd
touch index.html
Skapar index.html - Sänd
ls
- Sänd
ls -l
(listar rättigheter) Bokstäverna rwx står för Read/Write/Execute rättighet. Dessa visas tre gånger, först förOwner
, därefterGroup
och sistOthers
(world). RWX benämns ibland 7 (1+2+4). Första biten kan vara - (fil) eller d (katalog) - Sänd
ls -full
(lista allt) - Sänd
ls -a
(lista mappar som börjar med dot) - Sänd
ls -a -full
(lista utökat och mappar som börjar med dot) - Besvara: När skapades filen?
- Vad har filen för filrättigheter?
- Läs om chmod
https://ss64.com/bash/chmod.htm
git init
Skapar lokalt repository- Sänd
ls -a
git status
- Besvara: Vad har filen
index.html
för status (untracked | staged | committed ) och färg? - Besvara: Vilken branch är vi på?
- Redigera filen
index.html
med t.ex.<html>...</html>
och spara (Mac:open -a textedit index.html
| Windows:notepad index.html
| Linux:nano index.html
)
git add index.html
git status
- Besvara: Vad har filen index.html för status och färg?
git reset HEAD index.html
Fungerar det inte så användgit rm --cached index.html
git status
git add index.html
genomför stageinggit commit --message "Lagt till HTML"
- Besvara: Vad rapporterar git?
git status
git log
- Notera commit hash typ
42e95e5b41a4d2351ec2850812b34cf7c2112f11
- Uppdatera
index.html
med<head>...</head>
inom<html>...</html>
Stage'a och commit'aindex.html
med meddelandet "Lagt till BODY" - Tryck "pil upp" för att skrolla tillbaks till
git status
git log
- Besvara: Vad visar loggen? Två commits?
- Notera: commit hash, vilket är tidigare commit?
git log --stat
visar förändringar förkortat (pil upp/ned, Q för avslut)git log --pretty=oneline
visar hash, commit message och HEADgit log --patch -2
Visar förändringar i innehållet (pil upp/ned, Q för avslut)
git checkout <hash> index.html
testa att skriva så få hash-tecken som möjligt, börja med första (från vänster)- När Git säger
Prevoious HEAD was <hash>... HEAD is now at <hash>...
har ny version lästs in git status
- Besvara: Vad rapporterar git?
- Öppna filen
index.html
Återställd? - Uppdatera
index.html
igen med<head>...</head> och <body>...</body>
inom<html>...</html>
Stage'a och commit'aindex.html
med meddelandet "Lagt till HEAD och BODY" - Bläddra med pil-upp/ned till
git log -patch -2
visar innehållet som förändrats (avsluta med CTRL-C)
(C) Johan Sundström