Hoe u een privé-Git-server op uw webhosting instelt

Het beheren van code en samenwerken met teamleden is cruciaal voor elk ontwikkelingsproject. Hoewel platforms als GitHub en GitLab populair zijn, kan het instellen van uw eigen privé-Git-server op uw webhosting u meer controle geven over uw projecten, privacy garanderen en mogelijk kosten besparen. Deze tutorial leidt u door de stappen om een ​​privé-Git-server op uw webhosting in te stellen.

1. Waarom zou je een privé Git-server opzetten?

Voordat u met de installatie begint, is het belangrijk om de voordelen van uw eigen Git-server te begrijpen:

  • Privacy: Uw code blijft volledig privé en onder uw controle.
  • Aanpassing: Pas de server aan uw specifieke behoeften en workflows aan.
  • Geen gebruikerslimieten: Vermijd beperkingen op het aantal privé-repositories of medewerkers.
  • Kosteneffectief: Voor teams met meerdere gebruikers kan zelfhosting voordeliger zijn dan betaalde abonnementen op populaire platforms.

2. Vereisten

Voordat u begint, moet u ervoor zorgen dat u het volgende bij de hand hebt:

  • Een VPS of Dedicated Server: Gedeelde hosting biedt doorgaans niet de benodigde toegang en middelen voor het opzetten van een Git-server.
  • SSH-toegang: U hebt SSH-toegang tot uw server nodig om de Git-server te installeren en configureren.
  • Basiskennis van Linux: Kennis van de opdrachtregel en Linux is essentieel.

3. Git installeren op uw server

Eerst moet je Git op je server installeren. Volg deze stappen:

  1. Server updaten: Run the following command to ensure your server’s package list is up to date:
    sudo apt-get-update
  2. Git installeren: Install Git by running:
    sudo apt-get installeer git
  3. Installatie verifiëren: Check that Git has been installed correctly by typing:
    git --versie

4. Een Git-gebruiker aanmaken

Het is een goed idee om een ​​aparte gebruiker aan te maken voor het beheer van uw Git-repositories:

  1. Een nieuwe gebruiker aanmaken: Run the following command to create a user named ‘git’:
    sudo adduser-git
  2. SSH-toegang instellen: Add your SSH key to the new user’s authorized keys to enable secure access:
    sudo mkdir /home/git/.ssh
    sudo touch /home/git/.ssh/authorized_keys
    sudo nano /home/git/.ssh/authorized_keys

    Plak uw openbare SSH-sleutel in het bestand authorized_keys, sla het bestand op en sluit het af.

  3. Machtigingen instellen: Adjust permissions for the SSH directory:
    sudo chown -R git:git /home/git/.ssh
    sudo chmod 700 /home/git/.ssh
    sudo chmod 600 /home/git/.ssh/authorized_keys

5. Een repository maken

Nu kunt u uw eerste Git-repository maken:

  1. Maak een directory voor repositories: Log in as the ‘git’ user and create a directory for your repositories:
    sudo su - git
    mkdir repos
    cd repos
  2. Initialiseer een repository: Create a new Git repository by running:
    git init --bare uw-project.git

    Hiermee wordt een kale opslagplaats gecreëerd, wat ideaal is voor externe opslagplaatsen waar code naartoe wordt gepusht en waaruit code wordt opgehaald.

6. Klonen en pushen naar de repository

Nu u uw repository hebt ingesteld, kunt u deze klonen naar uw lokale machine en er code naartoe pushen:

  1. Kloon de repository: On your local machine, run:
    git clone git@your-server-ip:/home/git/repos/your-project.git
  2. Bestanden toevoegen en vastleggen: Add your files to the repository, commit them, and push the changes:
    cd your-project
    echo "# Your Project" >> README.md
    git add .
    git commit -m "Initial commit"
    git push origin master

7. Meerdere repositories beheren

Als u van plan bent om meerdere repositories te hosten, kunt u de stappen voor het maken van de repository eenvoudig herhalen voor elk project:

  • Maak voor elke repository een nieuwe directory onder /home/git/repos/.
  • Initialiseer elke nieuwe repository met git init --bare your-new-project.git.
  • U kunt elke repository onafhankelijk openen en beheren via SSH.

8. Uw Git-server beveiligen

Beveiliging is een cruciaal aspect van het hosten van een privé Git-server. Hier zijn enkele stappen om de beveiliging te verbeteren:

  • Wachtwoordverificatie uitschakelen: Configureer SSH zo dat alleen sleutelgebaseerde verificatie is toegestaan ​​door /etc/ssh/sshd_config te bewerken en PasswordAuthentication no in te stellen.
  • Firewallconfiguratie: Gebruik hulpmiddelen zoals UFW om alleen de noodzakelijke poorten toe te staan ​​(bijv. SSH) en andere te blokkeren.
  • Regelmatige back-ups: Maak regelmatig back-ups van uw opslagplaatsen om gegevensverlies te voorkomen.

9. Webinterfaces instellen (optioneel)

Als u de voorkeur geeft aan een webinterface voor het beheer van uw repositories, kunt u software zoals GitWeb of Gitea installeren:

  • GitWeb: Een eenvoudige webinterface voor het bekijken van Git-repositories.
  • Gitea: Een zelf-gehoste Git-service die een gebruiksvriendelijke interface biedt die vergelijkbaar is met GitHub.

Beide opties vereisen aanvullende instellingen en configuratie, maar kunnen de bruikbaarheid van uw Git-server aanzienlijk verbeteren.

Conclusie

Het opzetten van een privé Git-server op uw webhosting biedt volledige controle over uw code, biedt privacy en maakt aanpassing mogelijk om aan uw workflow te voldoen. Door deze handleiding te volgen, kunt u uw eigen Git-repositories maken en beheren, zodat uw ontwikkelingsproces veilig en efficiënt blijft.