La solution qui a le mieux fonctionné pour moi a été de mettre en place WebDAV.
<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>
- créer un répertoire
/var/www/git.yourserver.com
et répertoire repos
Identifiant intérieur
sudo chown www-data /var/www/git.yourserver.com/repos
-
sudo htpasswd -c /var/www/git.yourserver.com/password.dav user_login
et entrez le mot de passe de l'utilisateur nommé user_login
sudo chown root:www-data /var/www/git.yourserver.com/password.dav
sudo chmod 640 /var/www/git.yourserver.com/password.dav
Maintenant, sudo a2ensite git.yourserver.com
と sudo service apache2 restart
.
- Entrez
/var/www/git.yourserver.com/repos
et créer un répertoire, par exemple, myrepo.git
cd myrepo.git
git --bare init
git update-server-info
Maintenant, déconnectez-vous de votre serveur distant et allez dans le répertoire local dans lequel vous voulez modifier vos fichiers.
git clone http://user_login:user_password@git.yourserver.com/myrepo.git
et vous avez terminé. Si vous voulez envoyer vos changements commités au serveur :
git push origin master
Vous pouvez créer autant d'utilisateurs que vous le souhaitez à l'aide de la fonction sudo htpasswd
. N'oubliez pas de ne pas utiliser -c
lorsque vous ajoutez d'autres utilisateurs, car l'ancien fichier sera supprimé.