Versionshantering och samarbete
Git är ett kraftfullt verktyg för versionshantering och samarbete. Det används för att spåra förändringar i kod och göra det enkelt att arbeta tillsammans på projekt. Här går vi igenom grunderna i Git, från att initiera ett repo till att samarbeta med andra.
Vad är Git?
Git är ett versionshanteringssystem som:
- Spårar ändringar i filer.
- Gör det enkelt att samarbeta med andra.
- Hanterar olika versioner av ett projekt.
| Komponent | Beskrivning |
|---|---|
| Repository (repo) | En lagringsplats för projektets filer och historik. |
| Commit | En inspelning av förändringar. |
| Branch | En separat arbetskopiering av projektet. |
Steg 1: Skapa ett Git-repo
Initiera ett nytt repo
Skapa en folder
mkdir my_project Gå till den skapade foldern
cd my_project Initiera ett Git-repo
git init Output:
Initialized empty Git repository in /path/to/my_project/.git/
Lägg till en fil och gör din första commit
Skapa en ny fil
echo "Hello, Git!" > file.txtCode language: PHP (php) Lägg till filen i stagingområdet.
git add file.txtCode language: CSS (css) Gör en commit av förändringarna
git commit -m "Initial commit"Code language: JavaScript (javascript) Output:
[master (root-commit) abc1234] Initial commit
1 file changed, 1 insertion(+)
create mode 100644 file.txt
| Kommando | Beskrivning |
|---|---|
git init | Skapar ett nytt Git-repo. |
git add | Lägg till filer i stagingområdet. |
git commit | Skapar en inspelning av förändringarna. |
Steg 2: Hantera branches
Skapa och byta branch
Skapa en ny branch
git branch new-featureCode language: JavaScript (javascript) Byt till den nya branchen
git checkout new-featureCode language: JavaScript (javascript) Eller använd kortkommandot
git switch -c new-featureCode language: JavaScript (javascript) Output:
Switched to branch ‘new-feature’
Slå ihop branches
Byt tillbaka till master
git checkout master Slå ihop new-feature-branchen med master
git merge new-featureCode language: JavaScript (javascript) Output:
Updating abc1234..def5678
Fast-forward
file.txt | 1 +
1 file changed, 1 insertion(+)
Steg 3: Arbeta med fjärrrepo
Git är ofta kopplat till fjärrtjänster som GitHub, GitLab eller Bitbucket.
Koppla ett fjärrrepo
Lägg till ett fjärrrepo
git remote add origin https://github.com/username/my_project.gitCode language: JavaScript (javascript) Skicka ändringar till fjärrrepon
git push -u origin master Output:
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Steg 4: Samarbeta med andra
Hämta och slå ihop ändringar
Hämta ändringar från fjärrrepo
git fetch origin Slå ihop hämtade ändringar med den aktuella branchen
git merge origin/master Hämta och slå ihop med en gång
Hämta och slå ihop ändringar (fetch + merge)
git pull origin master Output:
Updating abc1234..def5678
Fast-forward
file.txt | 1 +
1 file changed, 1 insertion(+)
Hantera konflikter
Om två personer ändrar samma rad i en fil kan en konflikt uppstå.
Lös konflikter i filen
nano file.txt # Edit the file to fix the conflictCode language: PHP (php) Markera konflikten som löst
git add file.txtCode language: CSS (css) Gör en commit av de lösta ändringarna
git commit -m "Resolve merge conflict"Code language: JavaScript (javascript) Sammanfattande kod: En vanlig arbetsgång
Initiera ett nytt repository
git init Skapa och lägg till en fil
echo "Hello, Git!" > file.txtCode language: PHP (php) git add file.txtCode language: CSS (css) git commit -m "Initial commit"Code language: JavaScript (javascript) Skapa och byt till en ny brranch
git switch -c new-featureCode language: JavaScript (javascript) echo "New feature" >> file.txtCode language: PHP (php) git add file.txtCode language: CSS (css) git commit -m "Add new feature"Code language: JavaScript (javascript) Byt tillbaka till master och slå ihop
git switch masterCode language: JavaScript (javascript) git merge new-featureCode language: JavaScript (javascript) Skicka ändringar till ett fjärrrepository
git remote add origin https://github.com/username/my_project.gitCode language: JavaScript (javascript) git push -u origin master Tips och vanliga fallgropar
Tips
- Använd
git statusför att kontrollera repo-status. - Skriv meningsfulla commit-meddelanden för att hålla historiken tydlig.
- Använd branches för att undvika att bryta huvudkoden.
Vanliga fallgropar
- Ej stängda konflikter: Glöm inte att lösa konflikter innan du commitar.
- Push till fel branch: Kontrollera alltid vilken branch du arbetar på.
- Stora filer: Lägg inte till stora filer i Git. Använd verktyg som Git LFS.
Sammanfattning
Git är en hörnsten för moderna utvecklingsarbetsflöden. Genom att använda branches, commits och samarbeta med fjärrrepo kan du hantera dina projekt effektivt och arbeta tillsammans med andra utan problem. Experimentera och bli bekväm med Git för att få ut det mesta av dina projekt!

