Git är ett distribuerat gratis och open source versionshanteringsprogram. Det är designat att hantera allt från små till väldigt stora projekt på ett snabbt samt effektivt sätt. Det är ett program som behövs för att utvecklare ska kunna hålla reda på ändringar av programkod som gjorts av andra utvecklare, och kunna göra följdförändringar om så behövs. Det utvecklades 2005 av Linus Torvald och används idag flitigt av företag samt utvecklare i hela världen.
Vad är GitHub?
GitHub är ett webbtjänst för programvaruutveckling där alla deltagare får möjligheten att spara sina bidrag och ändringar till ett pågående projekt samt få en överblick över hur projektet framskrider. Tanken med denna plattform är att utvecklare ska kunna sköta versionshanteringen med hjälp av git både lokalt samt på deras webbtjänst (externt).
Hur är de kopplade?
Genom att ha git installerad på din lokala enhet så kan du sköta versionshantering både lokalt samt extern på GitHub. Om din programkod av någon anledningen skulle försvinna lokalt så kan du alltid hitta den senast uppladdade koden på GitHub!
Kom igång med Git och GitHub
Git
Innan mjukvaran börjar användas måste det kontrolleras om den finns installerad samt uppdaterad på din lokala dator. Installation, uppdatering etc. kan enkelt göras genom att följa denna guide på git's hemsida → https://git-scm.com/book/en/v2/Getting-Started-Installing-Git
GitHub
För att kunna använda sig av GitHubs plattform, tjänster etc. så måste först ett konto skapas. Detta kan enkelt göras genom att följa stegen i denna länk → https://github.com/join?source=header-home
Två viktiga saker att skilja på
Local repository: denna skapas lokalt genom git och finns endast på din lokala enhet.
Remote repository: denna skapas externt hos GitHub och finns på deras hemsida/plattform.
# 1. Öppna terminalen
# 2. Ta dig till mappen där där projektet ligger/ska ligga:
cd <directory>
# 3. Skapa en git fil som ska följa ditt projekt:
git init
# 4. Kolla om du kan se några tracked/untracked files:
git status
# 5. Skapa en fil som heter .gitignore, här skrivs filer som INTE ska laddas upp till remote repository:
touch .gitignore
# 6. Använd ex. nano för att skriva ner de filer som ska ignoreras (templates för detta finns att hitta i GitHub):
nano gitignore
# 7. Se igen om det finns några nya filer i mappen som inte är "tracked":
git status
# 8. Skapa en README fil:
touch README.md
# 9. Lägg in de filerna som ska vara "tracked" (ligga i "staging area").
# För specifik fil:
git add <file>
# För att hämta alla filer:
git add -A
# För att hämta alla filer:
# git add .
# 10. Kolla om filerna nu är i "staging area" och redo att bli "commited":
git status
# 11. För att "commit" filerna till din lokala repo:
git commit -m "<message>"
# 12. Titta om filerna är "commited" eller ligger kvar i "staging area":
git status
# 13. Titta på loggen för att se dina senaste "commits":
git log
# 14. Filerna ska nu ligga i i din "local repository", och är redo att pushas till din "remote repository". Innan det görs måste din "remote repo" ställas in:
git remote add origin <URL>
# 15. Titta om rätt adress lagt in:
git remote -v
# 16. Dags att pusha till "remote repository" (OM EN SÅDAN FINNS):
git push -u origin master
# I detta fall valde vi att pusha till "master branch", därav står det master efter origin
# OBS! Steg 5-8 kan göras i GitHub, då skapar hemsidan både Readme & .gitignore åt dig!
# 1. Om du skulle behöva ta bort filer från "staging area":
git reset
# 2. Om du skulle behöva se ändringar som gjorts:
git diff <file>