it-swarm-eu.dev

Nastavení serveru git

Nedávno jsem založil server Ubuntu na Amazonu EC2. Chtěl bych ji použít jako svůj server git, abych tam mohl ukládat své úložiště.

Kde tedy najdu nějaké podrobné pokyny, jak nastavit git na serveru Ubuntu? Všechny tyto klíče SSH a podobné věci, více uživatelů atd.

57
Praweł

Můžete použít výukový program k instalaci serveru Git podle návrhu aking1012 nebo můžete jednoduše nainstalovat server SSH do vaší instance EC2 (pravděpodobně by bylo moudré jej zabezpečit a změnit výchozí port).

Git může být bez serverů, než inicializujete svůj repozitář a poté k němu přistupujete ze vzdáleného systému přes SSH. Pokyny takhle na serveru Ubuntu by tak měly udělat:

GIT_DIR=project.git git init  
cd project.git  
git --bare update-server-info  
cp hooks/post-update.sample hooks/post-update

Nakonec nainstalujte SSH na svůj server:

Sudo apt-get install ssh-server

Nyní byste měli nakonfigurovat SSH, aby byla zabezpečena.

Je čas uvést svůj projekt online (data, která již máte na vývojovém stroji):

git Push ssh://<username>@<remote-git-hostname>/path/to/project.git master

A nyní můžete začít klonovat. Jdete na vývojový stroj:

git clone ssh://<username>@<remote-git-hostname>/path/to/dir.git

Zaškrtněte toto vynikající zdroj na Git .

A pro generování ssh klíčů pro bezpečnější autentizaci si můžete přečíst tento článek o SSH autentizace .

38
Huygens

Pro všechna nastavení serveru Git používám Gitolite , což umožňuje podrobnost zabezpečení přístupu "na větvi". Pokud to děláte na vzdáleném serveru, nastavení je zcela rovné, stejně jako spuštění interaktivního skriptu. Kromě této "snadno nastavitelné" povahy má také balíček v Natty a Maverick

Sudo apt-get install gitolite

Toto neposkytuje webové rozhraní jako Github nebo Gitweb - ale můžete je snadno nakonfigurovat a nainstalovat na něco jako Gitolite.

15
Marco Ceppi

Líbí se mi gitolit . Kniha Pro Git obsahuje část , ale doporučuji přečíst celou knihu.

Pokud jde o požadavek více uživatelů:

Gitolite vám umožňuje specifikovat oprávnění nejen podle úložiště (jako to dělá Gitosis), ale také podle větví nebo názvů značek v každém úložišti. To znamená, že můžete určit, že určití lidé (nebo skupiny lidí) mohou tlačit pouze určité „odkazy“ (větve nebo značky), ale ne jiné.

9
Li Lo
7
RobotHumans

Rozhodně postupujte podle oficiální dokumentace: https://help.ubuntu.com/community/Git (section Nastavení Git a řízení projektů)

6
chris

Řešení, které pro mě fungovalo nejlépe, bylo nastavení WebDAV.

  • Sudo a2enmod Sudo dav_fs

  • Sudo a2enmod dav

  • přidat nový soubor do /etc/Apache2/sites-available a pojmenujte jej například git.yourserver.com. Upravte jej a přidejte následující řádky:

<VirtualHost *:80>

DocumentRoot /var/www/git.yourserver.com/repos
ServerName git.yourserver.net
Options Indexes FollowSymLinks MultiViews

<Location />
    DAV On
    AuthType Basic
    AuthName "git repos"
    AuthUserFile /var/www/git.yourserver.net/password.dav
    Require valid-user
</Location>

</VirtualHost>

  • vytvořit adresář /var/www/git.yourserver.com a adresář repos uvnitř id
  • Sudo chown www-data /var/www/git.yourserver.com/repos
  • Sudo htpasswd -c /var/www/git.yourserver.com/password.dav user_login a zadejte heslo pro uživatele s názvem user_login
  • Sudo chown root:www-data /var/www/git.yourserver.com/password.dav
  • Sudo chmod 640 /var/www/git.yourserver.com/password.dav

Nyní, Sudo a2ensite git.yourserver.com a Sudo service Apache2 restart.

  • Zadejte /var/www/git.yourserver.com/repos a vytvořte adresář, například myrepo.git
  • cd myrepo.git
  • git --bare init
  • git update-server-info

Nyní se odhlaste ze vzdáleného serveru a přejděte do místního adresáře, ve kterém chcete své soubory upravovat.

git clone http://user_login:[email protected]/myrepo.git

a skončili jste. Pokud chcete zaslat vaše potvrzené změny na server:

git Push Origin master

Můžete vytvořit libovolný počet uživatelů pomocí Sudo htpasswd. Jen nezapomeňte nepoužívat -c přepínač, když přidáváte více uživatelů, protože starý soubor bude smazán.

4
Praweł

Také se mi líbí přístup gitolit pro správu uživatelů a zabezpečení. Mám nyní testovaný server Git + gitolite AMI pro EC2. Neváhejte a zkuste to; dokumentace je k dispozici zde:

Alestic Git Server

Pomocí tohoto přístupu můžete mít centrální server Git se soukromými úložišti spuštěnými během několika minut. Existuje křivka učení pro gitolit a EC2, pokud s nimi nejste obeznámeni.

3
Eric Hammond

Je velmi snadné dosáhnout pomocí gitolit . Za méně než hodinu budete mít snadno konfigurovatelný a bezpečný víceuživatelský server git.

Mám howto článek o můj web

3
realcnbs