För att kunna använda Git på ett webbhotellkonto hos oss måste du logga in via SSH. Om du inte redan har lagt till ett nyckelpar för SSH i cPanel så behöver du antingen importera en publik nyckel som du redan har eller så behöver du skapa ett helt nytt nyckelpar.
Konfigurera Git
När du har loggat in på ditt webbhotellkonto med SSH är första steget att konfigurera Git så det har dina användaruppgifter. Dessa uppgifter kommer följa med varje commit du gör så det är viktigt att du anger korrekta uppgifter som identifierar dig.
git config --global user.name "Ditt Namn"
git config --global user.email "din.epost@adress.se"
Du kan sedan köra följande för att se dina inställningar.
git config -l
Skapa ett repository
Som exempel så kommer jag skapa en mapp med namnet git i min public_html-mapp och sedan skapar jag en fil som heter index.html där.
cd public_html mkdir git cd git echo "Hello world" > index.html
För att skapa ett repository i mappen git behöver du köra följande när du står i mappen git.
git init
Då borde du få ett meddelande likt det här vilket betyder att ditt repo har skapats.
Initialized empty Git repository in /home/cpanelanvändare/public_html/git/.git/
Jobba med repot
Det har nu skapats en mapp i din git-mapp som heter .git. Här lagrar git all data om ditt repository, t.ex. commits, branches, pull requests osv.
Om du nu kör:
git status
Så kommer du se att git just nu inte hanterar några filer, det finns dock en ”untracked files” och det är din index.html-fil.
cpanelanvändare@iwarebiko [~/public_html/git]# git status # On branch master # # Initial commit # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # index.html nothing added to commit but untracked files present (use "git add" to track)
För att lägga till den filen i git behöver du köra följande:
git add index.html
Du kan även köra:
git add .
För att importera alla filer till git som finns i den mapp som du står i.
Nu är det dags att commit’a din ändring. En commit tar en bild av hur din miljö ser ut vid den tidpunkt som du gjorde commiten, på så sätt är det väldigt enkelt att gå tillbaka och se vilka ändringar som har gjorts. En commit ska även inkludera en kommentar så att man kan se varför en ändring har gjorts.
git commit -m "Kort info om vad som har gjorts"
Du borde få ett liknande meddelande när du har gjort din commit.
[master (root-commit) dd0b95e] kommentar 1 file changed, 1 insertion(+) create mode 100644 index.html
Om du nu kör git status
igen kan du se att det inte finns några ändringar att commit’a.
On branch master nothing to commit (working directory clean)
Om du nu gör en ändring i filen och sedan kör git status
igen ser det annorlunda ut:
cpanelanvändare@iwarebiko [~/public_html/git]# git status # On branch master # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: index.html # no changes added to commit (use "git add" and/or "git commit -a")
Du kan nu lägga till ändringen så att den kommer med i nästa commit om du är nöjd med den.
git add .
Nu vet git om ändringen men den är ännu inte permanent, kontrollera statusen med git status
. Skulle du ångra dig kör du git reset
för att ta bort ändringen igen. Men vi är nöjda så vi går vidare och commitar den.
git commit -m "ny commit"
[master 79c5a5c] ny commit 1 file changed, 1 insertion(+)
Nu är ändringen permanent i git-repot.
Externa repon
Oftast när man jobbar med git så jobbar man mot ett externt repo, t.ex. Github eller en egen-hostad version av Git. I exemplet här kommer vi använda Github.
Som första steg behöver du importera din publika SSH-nyckel till Github så att du kan ladda upp ditt repo dit.
Skapa nu ett nytt repo hos Github, välj att inte Initialize this repository with a README
välj även none
på .gitignore
och license.
Välj sedan att skapa repot.
Nu behöver du lägga till det repo du har hos Github via SSH i ditt webbhotellkonto. Se först till så att du står i den mapp där ditt repo ligger och kör sedan det här via SSH.
git remote add namn länktillrepo
Länken borde visas på reposidan i Github. Om den frågar efter inloggningsuppgifter använd då de inloggningsuppgifter som du har på Github.
Om du nu uppdaterar Github-sidan borde du se att alla filer som fanns i repot på ditt webbhotellkonto nu har laddats upp till Github!
Om du nu gör ändringar direkt i Github eller om någon annan jobbar med repot och laddar upp sina ändringar dit så kan du ladda ner dom till ditt webbhotellkonto genom att köra.
git pull namn branchen
Namnet är det namn du valde när du körde git remote add
. Branchen är master
så länge du inte har skapat några andra branches.
Om du nu gör en ändring filerna på ditt webbhotellkonto och du vill uppdatera repot hos Github behöver du köra följande.
git push namn branch
Om dina ändringar inte laddas upp är det troligtvis för att du inte har commitat dom, eller om du har skapat en ny fil att du inte har lagt till den och sedan commitat den. Kör git status
för att se om det har gjorts några ändringar som du inte har commitat.
Det här var bara en kort introduktion till hur du använder Git. Det finns mycket mer att lära sig och om du vill göra det rekommenderar jag att du läser How to get started with Git på git-scm.com.