Maison >outils de développement >git >Une brève analyse de la façon de créer un serveur git localement sous Windows
Avec la popularité de Git, de plus en plus d'entreprises et de particuliers commencent à utiliser Git pour le contrôle de version. Bien qu'il existe de nombreux services d'hébergement Git en ligne tels que Github, Gitlab et Bitbucket, pour certains développeurs, il est indispensable de créer un serveur Git local. Cet article explique comment configurer un serveur Git sur un système Windows.
Tout d'abord, vous devez installer le logiciel Git sur votre système Windows. Vous pouvez télécharger le dernier package d'installation de Git sur le site officiel de Git et l'installer selon les instructions. Pendant le processus d'installation, vous pouvez choisir les paramètres par défaut et vous n'avez besoin d'apporter aucune modification.
Après avoir installé Git, vous devez créer un référentiel Git localement. Vous pouvez créer un référentiel avec la commande suivante :
$ git init --bare /path/to/repo.git
où /path/to/repo.git
est le chemin de stockage du référentiel Git. Vous pouvez choisir d'autres chemins selon vos besoins. Cette commande créera un entrepôt nu pour stocker les informations de code et de version. /path/to/repo.git
是Git仓库的存储路径。可以根据需要选择其他的路径。该命令会创建一个裸仓库,用于存储代码和版本信息。
在搭建Git服务器时,需要注意权限的设置。可以通过以下步骤来配置权限:
repo.git/config
。[receive] denyCurrentBranch = ignore
该配置的作用是打开了对当前分支的写入权限。因为在本地搭建的Git服务器上,仅有管理员或具有写入权限的用户才能对仓库进行修改。
在Windows系统中,需要使用SSH协议来进行代码的传输。因此需要安装OpenSSH来开启SSH服务。可以从OpenSSH官网上下载最新的OpenSSH安装包,并按照指示进行安装。
安装完OpenSSH后,需要配置SSH服务。可以通过以下步骤来配置:
etcsshd_config
文件,如 C:Program FilesOpenSSHetcsshd_config
。Match User git ForceCommand C:\Program Files\Git\bin\git.exe serve --enforce-git-protocol --stateless-rpc "D:\git-shell-commands\git-receive-pack.exe 'D:\repos'"
其中 git
为用户名,C:Program FilesGitbingit.exe
为Git命令的路径,D:git-shell-commandsgit-receive-pack.exe
为Git的接收命令,D:repos
为Git仓库的存储路径。根据自己的实际情况进行修改即可。
配置完SSH服务之后,需要启动服务。打开 Windows PowerShell
窗口,输入以下命令进行服务的启动:
Start-Service sshd
验证服务是否启动成功,可以输入以下命令:
Get-Service sshd
如果成功启动,则输出的状态为 Running
。
在搭建好Git服务器后,需要进行连接测试。可以使用以下命令来测试:
$ git clone ssh://git@localhost:/path/to/repo.git
其中 git
为用户名,localhost
为IP地址或域名,/path/to/repo.git
为Git仓库的存储路径。根据自己的实际情况进行修改即可。
在Git服务器上,需要添加用户才能进行代码的提交和管理。可以使用以下命令来添加用户:
$ adduser git
输入密码并按照指示进行操作即可创建新用户。
在未添加SSH公钥的情况下,是无法在Git服务器上进行代码托管的。因此需要先配置SSH公钥。可以通过以下步骤来配置:
Windows PowerShell
窗口中输入以下命令:$ ssh-keygen -t rsa -C "your_email@example.com"
D:git-shell-commandsauthorized_keys
repo.git/config
. Ajoutez le code suivant sous la balise [core] : 🎜🎜rrreee🎜La fonction de cette configuration est d'ouvrir les autorisations d'écriture sur la branche actuelle. Car sur un serveur Git construit localement, seuls les administrateurs ou les utilisateurs disposant d'autorisations en écriture peuvent modifier l'entrepôt. 🎜etcsshd_config
dans le répertoire d'installation d'OpenSSH, tel que C:Program FilesOpenSSHetcsshd_config
. 🎜🎜Ajoutez le contenu suivant à la fin : 🎜🎜rrreee🎜où git
est le nom d'utilisateur, C:Program FilesGitbingit.exe
est le chemin d'accès à la commande Git, D:git -shell-commandsgit-receive-pack.exe est la commande de réception Git et D:repos
est le chemin de stockage de l'entrepôt Git. Vous pouvez le modifier en fonction de votre situation réelle. 🎜Windows PowerShell
et saisissez la commande suivante pour démarrer le service : 🎜rrreee🎜 Pour vérifier si le service démarre correctement, vous pouvez saisir la commande suivante : 🎜rrreee🎜S'il démarre correctement, la sortie l'état est En cours d'exécution
. 🎜git
est le nom d'utilisateur, localhost
est l'adresse IP ou le nom de domaine, /path/to/ repo.git
code> est le chemin de stockage du référentiel Git. Vous pouvez le modifier en fonction de votre situation réelle. 🎜Windows PowerShell
: 🎜🎜rrreeeD:git-shell-commandsauthorized_keys
sur le serveur Git . 🎜🎜🎜🎜Configuration complète du serveur Git local🎜🎜🎜Voici toutes les étapes ci-dessus pour configurer un serveur local Git sur le système Windows. Une fois terminé, le code peut être soumis et géré localement. La fonctionnalité de contrôle de version distribué de Git rend le processus de développement plus efficace et plus pratique. J'espère que cet article pourra vous être utile. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!