Disse dage er kodning og softwareudviklingsprogrammer på vej op. Som følge heraf er efterspørgslen efter programmer, der bruges på dette område, også enorm. Dette har skabt et stærkt konkurrencepræget miljø på nettet, hvor forskellige kodnings- og DevOps-programmer konkurrerer om at blive det mest brugte program på deres område. Git er et af disse programmer. Kombineret med den nye normale tilstand af fjernarbejde for job, der overvejende udføres bag en computerskærm, har dette ført til, at mange mennesker hoster deres programmer, herunder Git på fjernservere. Hvis du også befinder dig i denne kategori og gerne vil installere din egen Git-server, så søg ikke længere.
I denne artikel vil jeg gå igennem, hvad Git præcis er, og dække dets fordele og ulemper, før jeg viser dig, hvilke krav du har brug for, og hvordan du hoster din egen Git-server. Lad os gå i gang!
Hvad er Git?
Git er et DevOps-program designet til at give kodere og programmører mulighed for at gennemgå deres projekter og udføre dem så effektivt som muligt. Git's vigtigste funktion er at spore ændringer i kildekoden over tid. Git er gratis og open-source og modtager regelmæssige opdateringer. Dette gør Git til et af de lettest tilgængelige og pålidelige kodnings-DevOps-programmer i verden. Hver computer, hvor en Git-instans er placeret, fungerer som et fuldstændigt repository-katalog med sin egen separat historie over alle filændringer. Efter tæt på 20 års aktiv udvikling og mere end 30 udgivne opdateringer til Git kører programmet nu på version 2.40.0, med flere fremtidige opdateringer på vej. Lad os nu lære nogle af Gits use cases for bedre at forstå, hvorfor vi gerne vil installere Git-server i første omgang.
Git-anvendelsestilfælde
Før du haster i gang med at være vært for din egen lokale Git-server, skal vi først præcisere Gits primære use cases. Så du forstår, hvorfor du i det hele taget vil køre en Git-server.
Kloner repository
Mange udviklers foretrækker at oprette Git-repositories på en server for at spore programmer og filer, de vil have. Git gør det nemt - med blot et par grundlæggende kommandoer kan du klone dit nuværende Linux kernel-repository og bruge det til at opsamle en meget mere struktureret og effektiv oversigt over kun de filer, du er interesseret i. Processen er nem at udføre, og du kan nemt håndtere små og store kodeprojekter med den. Denne proces kaldes også ""forgrening", fordi du i det væsentlige opretter en ny branch fra dit eksisterende repository.
Git-arbejdsflow
Git Workflow er endnu en vigtig use case, som du vil bruge, når du konfigurerer din egen Git-server. Du kan bruge din lokale Git-server til at oprette to sæt branches via kloning og have et af dem repræsentere dit projekt - for eksempel et websted. Derefter kan du oprette en Git-server med en separat production-branch, hvor alle ændringer fra hver udvikler registreres og endda kan testes før implementering. Ikke alene booster denne lagdelte tilgang til udvikling og test din effektivitet, men det gør også sporing af udviklingen og ændringer utroligt nem.
Fusion
Husker du branching af dit repository og changelog? Som navnet antyder, er Merging det stik modsatte af den operation. Ved merging - som bredt betragtes som Gits mest udfordrende aspekt - ser vi på at injicere data fra en branch tilbage i master-repositoriet, som den oprindeligt blev splittet fra. Dette gøres normalt for at skabe en Git-server med en omfattende projektrapport og ændringshistorie, der omfatter alle projektændringer fra forskellige områder i ét kortfattet og let læseligt repository. Mens du under projektet har brug for branching for at undgå forvirring, er merging designet til at vende handlingen og give et klarere helhedsbillede ved projektets slutning under fejlsøgning.
Vær vært for din egen Git-server: fordele og ulemper
Hvert program har et sæt kritiske fordele og ulemper, som brugere skal kende, hvis de vil i gang med programmet. Her diskuterer jeg fordele og ulemper, som de gælder for Git. Men disse gælder kun, hvis du selv er vært for det - og det er essensen i denne guide. Så lad os komme i gang.
Selv-hostet Git: fordele
Ingen tredjepartsindblanding
Med selv-hostet Git er du og de mennesker, du arbejder med, de eneste, der har adgang til dine filer. Det eliminerer praktisk talt enhver uønsket tredjepartsindblanding og giver dig ro til at forfølge dit projekt. Dine data bliver også meget mere sikre, og du kan allokere ressourcer, du havde planlagt til sikkerhed, anderledes.
Sikkerhed
Når vi taler om sikkerhed, er Git så sikkert, som du kan gøre det gennem best practices og implementering af tredjepartsværktøjer. Selvom sikkerhedsniveauet falder, når du selv er vært i stedet for at bruge en udbyder, er der næsten ubegrænset frihed i, hvor sikker du kan gøre din egen operation.
Ubegrænsede repositories
Husker du kloning og branching? Der er ingen grænse for, hvor mange repositories du kan lave med Git. Det gør det utroligt velegnet til større projekter, hvor hver udviklingsbranch skal have sit eget repository. Det er også glimrende til projekter med store filer som 3D-assets og tilfælde, hvor du arbejder med Unity.
Selv-hostet Git: ulemper Ulemper
Høj grad af administrativt arbejde
Git-repositories kan hurtigt få overtaget, hvis du beslutter at konfigurere en Git-server på din egen selv-hostede platform. At håndtere alle branches og metadata kan hurtigt blive en hovedpine. Så du skal enten være utrolig præcis med det eller få en erfaren udvikler til at gøre det for dig.
Stejl indlæringskurve
Det er én ting at være vært for Git, men at mestre det og køre din lokale Git-server er noget helt tredje. Git har uden tvivl en af de højeste læringskurver blandt repository-baserede DevOps-programmer, og igen skal du bruge meget tid på at lære det eller outsource det.
Ingen GUI og Windows-understøttelse
Ville du gerne sætte en Git-server op på Windows? Eller måske ville du konfigurere Git-serveren til at køre med en GUI? Det har du desværre ikke held med. Du er begrænset til operativsystemer med Linux-kernel som basiskode, og der er ingen GUI til at hjælpe dig. Vil du installere en Git-server og være vært selv? Så skal du lære kodningsgrundlaget.
Forældet metode
Efter alle mulige målestokke virker det at bruge Git på en selv-hostet server forældet og overgået af andre, mere effektive metoder til at køre Git. De bedste eksempler på en mere effektiv Git-proces ville være at køre GitLab, så før du beslutter dig for at køre din egen Git-server, så tjek GitLab også!
Krav til installation af en Git-server
Lad os hurtigt gennemgå, hvad du skal bruge for at sætte en Git-server op og være vært for din egen Git-server. For at være vært for Git skal du blot have to komponenter: en server og en Git-instans, plus lidt kodningskendskab for at udføre konfigurationen af Git-serveren.
Git-server
Hvad serveren angår, kan du enten bruge en anden egen pc, bruge dedikerede servere fra traditionelle udbydere, eller hvis du foretrækker en mere praktisk tilgang, bruge en cloud VPS (virtual private server). Med en VPS kan du direkte administrere serveren og operere Git-instansen på samme tid. Bemærk, at din server skal have en Linux-distribution på den for at sætte en Git-server op. Cloudzy tilbyder en bred vifte af Linux VPS tjenester med mere end 10 velrenommerede Linux-distributioner som Ubuntu, Debian, CentOS, Kali og OpenSUSE. Fra blot $4,95 pr. måned kan du få adgang til en pålidelig Linux-server tæt på din lokation for at sikre god forbindelseskvalitet og bruge den til at være vært for og køre en Git-server!
Få dig en økonomi- eller premium Linux VPS til hosting af dit websted eller remote desktop til den billigste pris derude. VPS kører på Linux KVM for øget effektivitet og arbejder på kraftigt hardware med NVMe SSD-lagerplads for øget hastighed.
Læs mereGit-instans
Opsætningen af en Git-server er enkel, og vi håndterer det automatisk som del af installationen. Som nævnt er Git open-source og gratis. Det gør Git foretrukket over mange andre repository-baserede programmer til udvikling. Nu hvor du har det nødvendige, går vi direkte til vores trin-for-trin guide til at installere en Git-server på din Linux server!
Installer en Git-server på Linux (Trin-for-trin guide)
Trin 1: Download og installer Git
Her er det første trin i Git-serverinstallationen. I terminalen på din Linux distribution, skal du angive følgende kommando for at starte download af Git:
Ubuntu/Debian-baserede distributioner:
sudo apt install git
Arch-baserede distributioner:
sudo pacman -S git
RHEL-baserede distributioner:
sudo dnf install git
Denne kommando downloader og installerer Git på din Linux server. Vent på at processen afsluttes.
Trin 2: Registrer og konfigurer Git-serveren
Hvis du har en lokal server på en anden computer, start den, ellers skal du bruge SSH eller RDP hvis du har en VPS til at forbinde til din Linux server fra afstand. Nu konfigurerer vi Git-serveren til at køre fra afstand. Vi gør dette ved at oprette en Git-konto med følgende kommando:
ssh username@address
sudo useradd git
Angiv derefter denne kommando for at skifte til din nyoprettede konto:
su git
Dette trin sikrer primært sikkerheden for din lokale Git-server. Med denne konto bliver du serverens administrator. Du kan sikkert organisere fremtidige brugere i brugergrupper med foruddefinerede begrænsninger og adgangsniveauer.
Trin 3: Opret SSH mapper og Opret et Git-repository på serveren
Det næste trin i Git-serverinstallationen er at oprette en dedikeret SSH mappe til at gemme vores offentlige nøgler og opret et Git-repository på serveren med ekstra sikkerhedslag og definerede adgangsniveauer for dig. Start ved at angive følgende kommando:
ssh git@address
mkdir .ssh
chmod 700 .ssh/
touch .ssh/authorized_keys
Når du har begrænset adgang for andre med denne kommandolinje, skal du angive næste linje for at sikre at dine SSH nøgler er sikkert gemt i en authorized_keys mappe, hvor kun du kan få adgang (kør kun denne kommando hvis du IKKE har en id_rsa.pub fil):
cd .ssh
ssh-keygen -t rsa
cat id_rsa.pub
Kopier til sidst den SSH offentlige nøgle som du oprettede for at konfigurere en ny SSH forbindelse med øget sikkerhed til din lokale Git-server:
cd .ssh
vi authorized_keys
Trin 4: Opret en master-mappe
På din Linux server skal du oprette en ny mappe til at gemme alle de repositories som din Git skal bruge i dine fremtidige projekter. Du kan læse mere om at administrere dine Git-repositories. Angiv denne kommando:
mkdir directory_name
Trin 5: Tilføj dit projekt!
Du har fået oprettet en Git-server! Git-serverinstallationen er afsluttet med succes og du har også konfigureret Git-serveren med succes. Alt der mangler er at tilføje flere projekter med følgende kommando:
cd parent_directory
mkdir new_project.git
Angiv derefter denne kommando for at tilføje remote origin til din lokale computer:
git init --bare
git remote add origin name git@address:new_project.git
Udfør derefter en Git push for at teste, om alt fungerer som forventet:
touch testfile
git add testfile
git commit -m "test file"
git push name master
git clone git@address:new_project.git
Tillykke, du har nu korrekt hostet Git og oprettet et Git-repository på serveren.
Ofte stillede spørgsmål
Kan jeg hoste Git uden en server?
Nej. Uanset hvilken type server du har, skal du have hardware, der fungerer som server. Du kan bruge GitHub som cloud-server til dine repositories eller bruge vores VPS tilbud, eller du kan benytte en anden tredjepartstjeneste til at hoste serveren.
Findes der en måde at installere en Git-server med grafisk interface?
Ja. Selvom Git selv ikke understøtter grafisk interface, findes der en standalone-version kaldet "Git GUI", som er til folk, der ikke kan undvære grafisk interface.
Findes der en betalt plan for Git?
Nej. Git har været og vil altid være gratis og open source-software som bekræftet af de oprindelige udviklere og udgivere. Du kan således bruge programmet som grundlag for dine egne programmer, ellers er programmet helt gratis.
Hvorfor skulle du hoste din egen Git-server?
Antag, at du kører et mindre projekt med få repositories. I så fald er selvhosting meget mere privat og sikkert. Det er det primære argument. Men når du flytter til større projekter med flere repositories, mister selvhosting hurtigt sin effektivitet.