Android

Cum se configurează un server git

Как установить и настроить Git и GitHub в Windows

Как установить и настроить Git и GitHub в Windows

Cuprins:

Anonim

Când vine vorba de Git hosting, aveți la dispoziție o serie de opțiuni disponibile. GitHub, Gitlab și Bitbucket sunt soluții populare, dar rularea propriului server Git este o alternativă demnă de luat în considerare.

Configurarea unui server Git vă permite să creați depozite private, fără restricțiile planurilor gratuite ale furnizorilor.

În acest ghid, vă explicăm cum să configurați un server Git gol pe Linux. Această configurare este bună dacă aveți câteva depozite și colaboratorii sunt tehnologici. În caz contrar, ar trebui să luați în considerare instalarea unei aplicații git self-gazdate, cum ar fi Gitea, Gogs sau Gitlab.

Serverul Git poate fi configurat pe orice mașină Linux la distanță sau chiar pe sistemul local.

Configurarea serverului Git

Primul pas este să instalați Git pe serverul dvs.

sudo apt update && sudo apt install git

Pentru a instala pachetul git pe serverele CentOS tip:

sudo yum install git

Apoi, creați un utilizator nou care va gestiona depozitele Git:

sudo useradd -r -m -U -d /home/git -s /bin/bash git

Directorul home user este setat pe /home/git . Toate depozitele vor fi stocate în acest director. Nu am setat o parolă pentru utilizator „git”, conectarea va fi posibilă doar cu tastele ssh.

Treceți la „git” utilizator folosind comanda su :

sudo su - git

Rulați următoarele comenzi pentru a crea directorul SSH și setați permisiunile corecte:

mkdir -p ~/.ssh && chmod 0700 ~/.ssh

Creați un fișier numit ~/.ssh/authorized_keys care va reține cheile SSH ale utilizatorilor autorizați:

touch ~/.ssh/authorized_keys && chmod 0600 ~/.ssh/authorized_keys

Asta e. Configurarea serverului este completă. Acum sunteți gata să creați primul dvs. depozit Git.

Rulați următoarea comandă pentru a iniția un nou depozit gol:

git init --bare ~/projectname.git

Puteți numi directorul așa cum doriți. Important este să creezi depozitul în directorul de acasă al utilizatorului „git”.

Initialized empty Git repository in /home/git/projectname.git/

Configurarea depozitului local Git

Pentru a putea împinge modificările git-ului local pe serverul Git, veți adăuga cheia publică SSH a utilizatorului local la fișierul authorized_keys al utilizatorului „git” de la distanță.

cat ~/.ssh/id_rsa.pub

Rezultatul ar trebui să semene cu următoarele:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== [email protected]

Pentru a genera o nouă pereche de chei SSH, utilizați următoarea comandă:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Copiați ieșirea din comanda cat mai sus și reveniți la consola serverului Git.

Pe server, deschideți editorul de text și lipiți cheia publică pe care ați copiat-o de pe mașina locală în fișierul ~/.ssh/authorized_keys :

sudo nano /home/git/.ssh/authorized_keys

Întregul text de cheie public ar trebui să fie pe o singură linie.

Presupunem că pachetul Git este deja instalat pe mașina dvs. locală. Dacă nu, instalați-l în același mod descris în secțiunile anterioare.

cd /path/to/local/project

Inițializați un depozit git:

git init.

Ultimul pas este să adăugați telecomanda git în depozitul local:

git remote add origin git@git_server_ip:projectname.git

Nu uitați să înlocuiți git_server_ip cu numele dvs. de gazdă sau adresa IP a serverului Git.

Pentru a verifica dacă totul este configurat corect, creați un fișier de testare:

touch test_file

Adăugați modificările în zona de înscenare:

git add.

Angajați modificările:

git commit -m "descriptive message"

Apăsați modificările depozitului local într-un depozit la distanță:

git push -u origin master

Dacă totul este configurat corect, ieșirea ar trebui să arate așa:

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'.

Pentru a adăuga un nou colaborator, trebuie doar să copiați cheia sa SSH publică în fișierul ~/.ssh/authorized_keys al utilizatorului "git".

Puteți utiliza aceiași pași pentru a crea noi depozite. Este important să rețineți că depozitul la distanță trebuie să existe înainte de a adăuga telecomanda git în depozitul local.

Concluzie

În acest tutorial, v-am arătat cum să configurați propriul server Git privat și să creați depozite.