Webbhotell med Git-stöd

Git-stöd på webbhotellet innebär att du kan versionshantera din kod och driftsätta ändringar direkt via kommandoraden. Istället för att ladda upp filer via FTP gör du en git push och servern uppdateras automatiskt.

Det ger dig full historik över alla ändringar, möjlighet att snabbt rulla tillbaka misstag och ett professionellt arbetsflöde. Git på webbhotellet kräver vanligtvis SSH-åtkomst, och inte alla delade hostar erbjuder det.

Läs om hur vi testar och betygsätter

7 resultat Priser exkl. moms
Sverige Oderland 3 paket
4.8
SSL SSH Backup HTTP/3 Sverige WordPress WooCommerce Redis GDPR Grönt Litespeed Cpanel
Från
215 kr /mån
USA WP Engine 4 paket
4.4
Endast WordPress SSL SSH Backup WordPress WooCommerce Managed Nginx
USA Cloudways 3 paket
4.3
SSL SSH Backup WordPress Apache
Schweiz Infomaniak 1 paket
4.1
SSL SSH Backup WordPress GDPR Grönt Apache
Sverige EgenSajt 1 paket
3.9
SSL SSH Backup Sverige WordPress Apache
Danmark Polar55 1 paket
3.5
SSL SSH Backup WordPress Litespeed Cpanel
Intropris från
9 kr /mån
Ord. från 39 kr/mån
Sverige Websupport 3 paket
3.1
SSL SSH Backup Sverige WordPress GDPR Grönt Apache
Intropris från
39 kr /mån
Ord. från 149 kr/mån

Vad Git-stöd på ett webbhotell egentligen innebär

Git är ett distribuerat versionskontrollsystem som från början skapades av Linus Torvalds för att hantera Linux-kärnan. Det har sedan dess blivit standarden för nästan all professionell webbutveckling. Varför tar vi upp det här på en sida om webbhotell? För att hur du driftsätter kod till servern är lika viktigt som att koden fungerar lokalt. Den som en gång råkat skriva över en fil via FTP, och inte hade en kopia, förstår vad vi menar.

Git-deploy innebär att ditt webbhotell hämtar den senaste versionen av din kod direkt från ett Git-förråd, antingen via en push-händelse eller ett kommando du kör själv. Resultatet är ett arbetsflöde där varje ändring är spårad, varje driftsättning kan återgå till ett tidigare tillstånd, och risken för att "något råkade försvinna" sjunker till noll.

Versionshantering och återställning

Den mest uppenbara fördelen med Git är inte deploy-mekanismen i sig, utan historiken den ger dig. Varje commit är en tidsstämpel av exakt vilket tillstånd din webbplats befann sig i. Om en uppdatering introducerar ett fel kan du inom sekunder identifiera vilken ändring som orsakat det och rulla tillbaka till en fungerande version. Det är en fundamental skillnad mot att underhålla filer via FTP, där det inte finns någon inbyggd historik alls.

I praktiken innebär detta också att du kan arbeta på en funktion i en separat gren (branch), testa den isolerat och sedan slå ihop den med huvudgrenen först när du är nöjd. Det är ett arbetsätt som är svårt att efterlikna med traditionell filöverföring.

Push-to-deploy: när ett git push driftsätter din sajt

Push-to-deploy är det flöde de flesta förknippar med modern webhutveckling: du skickar dina ändringar till ett förråd och servern hämtar och aktiverar dem automatiskt. Implementationen kan se ut på lite olika sätt beroende på webbhotellet.

Den vanligaste varianten på delade webbhotell som kör cPanel är Git Version Control, ett inbyggt verktyg som låter dig koppla ett förråd (antingen på servern eller via GitHub/GitLab) mot en specifik katalog på kontot. Varje gång du pushar en ny commit utlöser cPanel en automatisk utcheckning. Konfigurationen är relativt rättfram via cPanel-gränssnittet och kräver inget djupare SSH-kommando. Begränsningen är att det är cPanels egna implementation, och den ger dig inte full kontroll över vad som händer efter utcheckningen.

Den andra vägen, som ger full flexibilitet, är post-receive hooks via SSH. Det är ett litet skript som körs på servern exakt i det ögonblick ett push tas emot. Du kan i det skriptet inte bara checka ut kod utan även köra exempelvis composer install, rensa en cache eller starta om en tjänst. Det kräver dock att du har SSH-åtkomst till webbhotellet och är komfortabel med att skriva ett enkelt bash-skript. De flesta seriösa leverantörer erbjuder SSH på sina standardpaket, men kontrollera det innan du väljer.

En tredje variant är att inte förlita sig på en push-trigger alls, utan att logga in via SSH och köra git pull manuellt när du vill driftsätta. Det är enklare att sätta upp och ger dig ett explicit steg som bekräftar att driftsättningen sker. Vi använder den metoden på den här sajten och märker att det ofta räcker för enskilda projekt utan stora team.

FTP kopierar filer. Git-deploy driftsätter ett tillstånd. Det är inte samma sak.

Git-deploy vs FTP: vad du konkret vinner

FTP är fortfarande det vanligaste sättet att flytta filer till ett webbhotell, och det fungerar tekniskt sett alldeles utmärkt för enklare sajter. Men det är ett verktyg utan minne. Du ser vilka filer som finns på servern just nu, men inte hur de hamnade där, vem som ändrade dem eller vad de innehöll igår.

Egenskap FTP/SFTP Git-deploy
Versionshistorik Ingen Full historik per commit
Återrullning Manuell, kräver backup git revert eller git checkout
Teamarbete Risk för överskrivning Merge-konflikter hanteras explicit
Automatisering Begränsad Hooks, CI/CD-pipelines möjliga
Inlärningströskel Låg Medel (kräver Git-grundkunskaper)
Kräver SSH Nej (FTP) / Ja (SFTP) Ja, för hooks och manuell pull

Det är värt att påpeka att FTP och Git-deploy inte är ömsesidigt uteslutande. I praktiken börjar många med FTP och inför Git-deploy successivt när projektet växer eller när de vill ha ordning i historiken. Det fungerar att köra parallellt under en övergångsperiod, även om det lätt leder till förvirring om vem som senast uppdaterade vad.

Typiskt Git-deploy-arbetsflöde med staging

  • Arbeta lokalt i en feature-branchHåll main/master ren. Alla experimentella ändringar görs i egna grenar och slås ihop när de är godkända.
  • Pusha till en staging-remoteKoppla en separat remote mot din stagingmiljö. Testa där i identiska serverförhållanden innan du rör live.
  • Verifiera på stagingKör igenom de delar av sajten som berörs. Git gör det lätt att jämföra exakt vilka filer som skiljer sig mellan staging och live.
  • Merga till main och pusha till liveAntingen triggar en post-receive hook en automatisk utcheckning, eller kör du git pull på servern via SSH. Bägge är snabba och spårbara.
  • Tagga releaser för viktigare driftsättningarEn git-tagg (t.ex. v1.4.2) gör det enkelt att hitta och återgå till en specifik produktionssatt version, särskilt användbart om du kör en sajt med tät utgivningstakt.

Krav: SSH är oftast nödvändigt

Git kan tekniskt användas utan SSH via HTTP/HTTPS-kloningsprotokoll, men för ett fungerande server-side deploy-flöde behöver du i praktiken SSH-åtkomst. Utan det kan du inte skapa post-receive hooks, inte köra git pull manuellt och inte installera composer-beroenden eller rensa caches efter en driftsättning.

En del webbhotell erbjuder SSH enbart på de dyrare paketen. Kontrollera detta konkret innan du binder upp dig, det är ett vanligare hinder än man kan tro. För ett utvecklarfokuserat webbhotell ska SSH vara en självklarhet på samtliga paket, inte ett tillägg.

Värd att känna till är också att cPanels Git Version Control inte kräver SSH för att klona förråd från GitHub eller Bitbucket, men en del avancerade konfigurationer, som att köra skript efter utcheckning, kräver det ändå. Se cPanel-varianten som ett bra ingångsläge för den som vill komma igång utan att behöva konfigurera mycket manuellt.

Börja med git pull via SSH, bygg på därifrån

Du behöver inte sätta upp automatiska webhooks och CI/CD-pipelines för att dra nytta av Git på ditt webbhotell. En enkel remote som pekar mot servern och ett manuellt 'git pull' efter varje driftsättning räcker för att få versionshistorik och kontrollerade releaser. Automatisering kan du lägga till när arbetsflödet sitter.

Vanliga frågor om Git på webbhotell

Svar på de vanligaste frågorna om Git-deploy, versionshantering och automatisk publicering på delade webbhotell.

Grunderna

Git-deploy betyder att du publicerar din sajt genom att skjuta kod till ett Git-repository, varefter webbhotellet automatiskt checkar ut och driftsätter filerna på servern. Det ersätter manuell filöverföring och gör varje publicering reproducerbar: servern kör alltid exakt den kod som finns i repot, och du behåller full historik över vad som ändrats och när.

Delade webbhotell med cPanel erbjuder oftast Git Version Control direkt i kontrollpanelen, utan krav på VPS eller root-åtkomst. Du skapar ett repository, kopplar det mot ett fjärrrepo på GitHub eller GitLab, och kan sedan driftsätta med ett klick eller via automatiska webhooks. Webbhotell med DirectAdmin eller eget kontrollgränssnitt varierar mer, och det är värt att kontrollera om SSH-åtkomst ingår, eftersom det förenklar automatiserade flöden avsevärt.

Tekniskt sett behövs inte SSH om webbhotellet erbjuder Git-stöd via kontrollpanelen, men i praktiken gör SSH arbetsflödet mycket smidigare. Med SSH kan du klona, pusha och köra post-receive-hooks direkt från terminalen. Utan SSH är du begränsad till panelens gränssnitt för att trigga deploy, vilket fungerar men tar bort möjligheten till fullständig automatisering och CI/CD-integration.

Sätta upp och automatisera

Det vanligaste sättet är att kombinera en webhook på GitHub eller GitLab med antingen cPanels inbyggda Git-integration eller ett enkelt PHP-skript som triggas vid push. I cPanel: skapa ett Git-repository under Git Version Control, länka det mot ditt fjärrrepo, och aktivera automatisk deploy. För ett mer styrt flöde kan du lägga ett post-receive-hook-skript i repots hooks/-mapp på servern, som exekveras varje gång kod landar. Kräver SSH-åtkomst och att webbhotellet tillåter körning av skript.

Det går, men med tydliga begränsningar. En GitHub Actions- eller GitLab CI-pipeline kan vid godkänd build skjuta färdig kod till webbhotellet via SSH och git pull, eller via en webhook som triggar deploy i cPanel. Det som saknas på delade webbhotell är isolerade bygg-miljöer och stöd för Docker, så komplexa build-steg måste köras i CI-plattformen innan kod skjuts till servern. För enklare sajter och PHP-projekt fungerar det utmärkt.

Git-deploy jämfört med FTP och återställning

FTP överför filer manuellt utan att hålla koll på vad som ändrats eller varför, vilket gör det lätt att råka skriva över fel fil eller tappa spåret på vad som körs i produktion. Git-deploy skickar bara de faktiska skillnaderna, knyter varje publicering till en commit med beskrivning och tidsstämpel, och gör det möjligt att omedelbart se vilken version av koden som faktiskt är live. Den praktiska konsekvensen: återställning efter ett misstag tar sekunder med Git, medan FTP kräver att du vet exakt vilka filer du laddade upp.

Enklaste sättet är att checka ut den commit du vill återgå till och köra en ny deploy, antingen via git checkout <commit-hash> följt av att pusha till servern, eller via cPanels Git-panel där du väljer vilken commit som ska driftsättas. Att hålla taggade releaser (t.ex. v1.4.2) gör det ännu snabbare att hitta en stabil referenspunkt. Tänk på att återställning av kod inte automatiskt återställer databasen, så om du gjort databasmigrationer bör du ha backup-rutiner på plats också.

De vanligaste hindren är att SSH-åtkomst saknas eller kostar extra, att post-receive-hooks blockeras av säkerhetspolicyer, och att resursgränser (CPU-tid, processer) begränsar vad som kan köras automatiskt vid deploy. En del leverantörer stödjer Git enbart via sin panel med manuell deploy, inte via webhooks. Behöver du full kontroll över deploy-pipeline, automatiska tester och zero-downtime-driftsättning, är en VPS eller cloud-hosting ett mer praktiskt val än ett delat konto.