Setting up *Your Own* Git Server
Inhoudsopgave:
Als het gaat om Git-hosting, heb je een aantal opties beschikbaar. GitHub, Gitlab en Bitbucket zijn populaire oplossingen, maar het runnen van je eigen Git-server is een alternatief dat het overwegen waard is.
Door een Git-server in te stellen, kunt u privérepository's maken zonder de beperkingen van de gratis plannen van de providers.
In deze gids leggen we uit hoe je een blote Git-server op Linux kunt instellen. Deze opstelling is goed als je weinig repositories hebt en de medewerkers technisch onderlegd zijn. Anders zou je moeten overwegen om een zelf-gehoste git-applicatie zoals Gitea, Gogs of Gitlab te installeren.
De Git-server kan worden ingesteld op elke externe Linux-machine of zelfs op uw lokale systeem.
De Git-server instellen
De eerste stap is om Git op uw server te installeren.
sudo apt update && sudo apt install git
Om het git-pakket op CentOS-servers te installeren:
sudo yum install git
Maak vervolgens een nieuwe gebruiker die de Git-opslagplaatsen beheert:
sudo useradd -r -m -U -d /home/git -s /bin/bash git
De thuismap van de gebruiker is ingesteld op
/home/git
. Alle repositories worden onder deze map opgeslagen. We hebben geen wachtwoord ingesteld voor de gebruiker "git", het inloggen is alleen mogelijk met de ssh-toetsen.
Schakel naar gebruiker "git" met behulp van de opdracht
su
:
sudo su - git
Voer de volgende opdrachten uit om de SSH-map te maken en de juiste machtigingen in te stellen:
mkdir -p ~/.ssh && chmod 0700 ~/.ssh
Maak een bestand met de naam
~/.ssh/authorized_keys
waarin de SSH-sleutels van de geautoriseerde gebruikers kunnen worden bewaard:
touch ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys
Dat is het. De serverinstelling is voltooid. Je bent nu klaar om je eerste Git-repository te maken.
Voer de volgende opdracht uit om een nieuwe lege repository te starten:
git init --bare ~/projectname.git
U kunt de map een naam geven die u wilt. Het belangrijkste is om de repository te maken onder de "git" user home directory.
Initialized empty Git repository in /home/git/projectname.git/
Local Git Repository configureren
Om de lokale git-wijzigingen naar de Git-server te kunnen pushen, moet je je lokale openbare SSH-sleutel toevoegen aan het
authorized_keys
van de externe "git" -gebruiker.
cat ~/.ssh/id_rsa.pub
De uitvoer moet er ongeveer zo uitzien:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]
Gebruik de volgende opdracht om een nieuw SSH-sleutelpaar te genereren:
ssh-keygen -t rsa -b 4096 -C "[email protected]"
Kopieer de uitvoer van het bovenstaande
cat
commando en ga terug naar de Git-serverconsole.
Open op de server uw teksteditor en plak de openbare sleutel die u van uw lokale machine hebt gekopieerd in het bestand
~/.ssh/authorized_keys
:
sudo nano /home/git/.ssh/authorized_keys
De hele openbare sleuteltekst moet op één regel staan.
We gaan ervan uit dat het Git-pakket al op uw lokale computer is geïnstalleerd. Als dit niet het geval is, installeer het dan op dezelfde manier als uitgelegd in de vorige paragrafen.
cd /path/to/local/project
Initialiseer een git repository:
git init.
De laatste stap is om de git remote toe te voegen aan je lokale repository:
git remote add origin git@git_server_ip:projectname.git
Vergeet niet om
git_server_ip
te vervangen door de hostnaam of het IP-adres van uw Git-server.
Maak een testbestand om te controleren of alles correct is ingesteld:
touch test_file
Voeg de wijzigingen toe aan het tijdelijke gebied:
git add.
Leg de wijzigingen vast:
git commit -m "descriptive message"
Push de wijzigingen in de lokale repository naar een externe repository:
git push -u origin master
Als alles correct is ingesteld, ziet de uitvoer er ongeveer zo uit:
Counting objects: 3, done. Writing objects: 100% (3/3), 218 bytes | 218.00 KiB/s, done. Total 3 (delta 0), reused 0 (delta 0) To git_server_ip:projectname.git * master -> master Branch 'master' set up to track remote branch 'master' from 'origin'.
Om een nieuwe medewerker toe te voegen, kopieert u gewoon de openbare SSH-sleutel naar het bestand
~/.ssh/authorized_keys
van de "git" -gebruiker.
U kunt dezelfde stappen gebruiken om nieuwe opslagplaatsen te maken. Het is belangrijk op te merken dat de externe repository moet bestaan voordat je de git remote toevoegt aan je lokale repository.
Conclusie
In deze tutorial hebben we je laten zien hoe je je eigen privé Git-server kunt instellen en repositories kunt maken.
E-maillijst Leverancier: onze archieven zijn nauwkeurig E-mailapplicaties, een databasebedrijf, houden de gegevens bij nadat ze ervan zijn beschuldigd een bunk e-mail lijst naar Javelin ... Een bedrijf beschuldigd van slechte zakelijke praktijken voor het vermeend verkopen van een bunk e-maillijst gebruikt voor een marketing campagne handhaaft dat de gegevens goed zijn.
Het geschil tussen Emailappenders en Javelin Marketing biedt een interessante kijk op hoe marketingbedrijven aan de goede kant van de wetgeving moeten blijven, zoals de CAN-SPAM-act in de VS, en hoe e-mail big business is, niet alleen voor spammers. De worm, Stuxnet genaamd, werd vorige maand voor het eerst gezien toen het systemen infecteerde bij een niet-geïdentificeerde Iraanse organisatie, volgens Sergey Ulasen, hoofd van het antivirusprogramma. kernelafdeling bij VirusBlokAda, in Minsk, Wit-Rusland. Het niet-geïdentificeerde slachtoffer, dat geen eigenaar is van het type SCADA-systeem (toezichtcontrole en gegevensverzameling) dat door de worm wordt getarget, "vertelde ons dat hun werkstations serieel opnieuw werden opgestart zonder eni Meer informatie over het instellen van een video als beltoon op Android-telefoons.Siemens: Duitse klant getroffen door industriële worm
Hoe een video in te stellen als beltoon op een Android-telefoon







