Heim Entwicklungswerkzeuge Idiot Eine kurze Analyse, wie man einen Git-Server lokal in Windows erstellt

Eine kurze Analyse, wie man einen Git-Server lokal in Windows erstellt

Apr 03, 2023 am 09:20 AM

Mit der Popularität von Git beginnen immer mehr Unternehmen und Einzelpersonen, Git zur Versionskontrolle zu verwenden. Obwohl es viele Online-Git-Hosting-Dienste wie Github, Gitlab und Bitbucket gibt, ist es für einige Entwickler sehr wichtig, einen lokalen Git-Server aufzubauen. In diesem Artikel erfahren Sie, wie Sie einen Git-Server auf einem Windows-System einrichten.

  1. Git installieren

Zunächst müssen Sie die Git-Software auf Ihrem Windows-System installieren. Sie können das neueste Git-Installationspaket von der offiziellen Git-Website herunterladen und gemäß den Anweisungen installieren. Während des Installationsvorgangs können Sie die Standardeinstellungen wählen und müssen keine Änderungen vornehmen.

  1. Git-Repository erstellen

Nach der Installation von Git müssen Sie lokal ein Git-Repository erstellen. Sie können ein Repository mit dem folgenden Befehl erstellen:

$ git init --bare /path/to/repo.git

wobei /path/to/repo.git der Speicherpfad des Git-Repositorys ist. Sie können bei Bedarf andere Pfade wählen. Dieser Befehl erstellt ein reines Warehouse zum Speichern von Code- und Versionsinformationen. /path/to/repo.git 是Git仓库的存储路径。可以根据需要选择其他的路径。该命令会创建一个裸仓库,用于存储代码和版本信息。

  1. 配置权限

在搭建Git服务器时,需要注意权限的设置。可以通过以下步骤来配置权限:

  • 打开Git仓库的配置文件 config 文件,路径为 repo.git/config
  • 在 [core] 标签下添加以下代码:
[receive]
    denyCurrentBranch = ignore

该配置的作用是打开了对当前分支的写入权限。因为在本地搭建的Git服务器上,仅有管理员或具有写入权限的用户才能对仓库进行修改。

  1. 开启SSH服务

在Windows系统中,需要使用SSH协议来进行代码的传输。因此需要安装OpenSSH来开启SSH服务。可以从OpenSSH官网上下载最新的OpenSSH安装包,并按照指示进行安装。

  1. 配置SSH服务

安装完OpenSSH后,需要配置SSH服务。可以通过以下步骤来配置:

  • 打开 OpenSSH 安装目录下的 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仓库的存储路径。根据自己的实际情况进行修改即可。

  1. 启动SSH服务

配置完SSH服务之后,需要启动服务。打开 Windows PowerShell 窗口,输入以下命令进行服务的启动:

Start-Service sshd

验证服务是否启动成功,可以输入以下命令:

Get-Service sshd

如果成功启动,则输出的状态为 Running

  1. 连接Git服务器

在搭建好Git服务器后,需要进行连接测试。可以使用以下命令来测试:

$ git clone ssh://git@localhost:/path/to/repo.git

其中 git 为用户名,localhost 为IP地址或域名,/path/to/repo.git 为Git仓库的存储路径。根据自己的实际情况进行修改即可。

  1. 添加Git用户

在Git服务器上,需要添加用户才能进行代码的提交和管理。可以使用以下命令来添加用户:

$ adduser git

输入密码并按照指示进行操作即可创建新用户。

  1. 配置SSH公钥

在未添加SSH公钥的情况下,是无法在Git服务器上进行代码托管的。因此需要先配置SSH公钥。可以通过以下步骤来配置:

  • 在客户端机器上生成SSH公钥和私钥。在 Windows PowerShell 窗口中输入以下命令:
$ ssh-keygen -t rsa -C "your_email@example.com"
  • 将生成的公钥复制到Git服务器上的 D:git-shell-commandsauthorized_keys
    1. Berechtigungen konfigurieren
    1. Beim Aufbau eines Git-Servers müssen Sie auf die Berechtigungseinstellungen achten. Sie können Berechtigungen durch die folgenden Schritte konfigurieren:
      Öffnen Sie die Konfigurationsdatei config des Git-Warehouses, der Pfad lautet repo.git/config.

      Fügen Sie den folgenden Code unter dem Tag [core] hinzu: 🎜🎜rrreee🎜Die Funktion dieser Konfiguration besteht darin, Schreibberechtigungen für den aktuellen Zweig zu öffnen. Denn auf einem lokal aufgebauten Git-Server können nur Administratoren oder Benutzer mit Schreibrechten das Warehouse verändern. 🎜
      🎜SSH-Dienst aktivieren🎜🎜🎜In Windows-Systemen müssen Sie das SSH-Protokoll für die Codeübertragung verwenden. Daher muss OpenSSH installiert sein, um den SSH-Dienst zu aktivieren. Sie können das neueste OpenSSH-Installationspaket von der offiziellen OpenSSH-Website herunterladen und gemäß den Anweisungen installieren. 🎜
        🎜SSH-Dienst konfigurieren🎜🎜🎜Nach der Installation von OpenSSH müssen Sie den SSH-Dienst konfigurieren. Sie können es mit den folgenden Schritten konfigurieren: 🎜
      🎜Öffnen Sie die Datei etcsshd_config im OpenSSH-Installationsverzeichnis, z. B. C:Program FilesOpenSSHetcsshd_config. 🎜🎜Fügen Sie am Ende den folgenden Inhalt hinzu: 🎜🎜rrreee🎜wobei git der Benutzername ist, C:Program FilesGitbingit.exe der Pfad zum Git-Befehl ist, D:git -shell-commandsgit-receive-pack.exe ist der Git-Empfangsbefehl und D:repos ist der Speicherpfad des Git-Warehouses. Sie können es entsprechend Ihrer tatsächlichen Situation ändern. 🎜
      🎜Starten Sie den SSH-Dienst🎜🎜🎜Nachdem Sie den SSH-Dienst konfiguriert haben, müssen Sie den Dienst starten. Öffnen Sie das Fenster Windows PowerShell und geben Sie den folgenden Befehl ein, um den Dienst zu starten: 🎜rrreee🎜 Um zu überprüfen, ob der Dienst erfolgreich gestartet wurde, können Sie den folgenden Befehl eingeben: 🎜rrreee🎜Wenn er erfolgreich gestartet wurde, Der Ausgabestatus ist Running. 🎜
        🎜Mit Git-Server verbinden🎜🎜🎜Nach dem Einrichten des Git-Servers müssen Sie einen Verbindungstest durchführen. Sie können zum Testen den folgenden Befehl verwenden: 🎜rrreee🎜wobei git der Benutzername ist, localhost die IP-Adresse oder der Domänenname ist, /path/to/ repo.gitcode> ist der Speicherpfad des Git-Repositorys. Sie können es entsprechend Ihrer tatsächlichen Situation ändern. 🎜
          🎜Git-Benutzer hinzufügen🎜🎜🎜Auf dem Git-Server müssen Sie einen Benutzer hinzufügen, um Code zu übermitteln und zu verwalten. Benutzer können mit dem folgenden Befehl hinzugefügt werden: 🎜rrreee🎜 Geben Sie Ihr Passwort ein und folgen Sie den Anweisungen, um einen neuen Benutzer zu erstellen. 🎜
            🎜Konfigurieren Sie den öffentlichen SSH-Schlüssel🎜🎜🎜Es ist unmöglich, Code auf dem Git-Server zu hosten, ohne den öffentlichen SSH-Schlüssel hinzuzufügen. Daher müssen Sie zuerst den öffentlichen SSH-Schlüssel konfigurieren. Dies kann durch Befolgen dieser Schritte konfiguriert werden: 🎜
      🎜Generieren Sie öffentliche und private SSH-Schlüssel auf dem Client-Computer. Geben Sie im Fenster Windows PowerShell den folgenden Befehl ein: 🎜🎜rrreee
        🎜Kopieren Sie den generierten öffentlichen Schlüssel in die Datei D:git-shell-commandsauthorized_keys auf dem Git-Server . 🎜🎜🎜🎜Schließen Sie die Einrichtung des lokalen Git-Servers ab🎜🎜🎜Die oben genannten Schritte sind alle Schritte zum Einrichten eines lokalen Git-Servers auf einem Windows-System. Nach Fertigstellung kann der Code übermittelt und lokal verwaltet werden. Die verteilte Versionskontrollfunktion von Git macht den Entwicklungsprozess effizienter und bequemer. Ich hoffe, dieser Artikel kann für Sie hilfreich sein. 🎜

    Das obige ist der detaillierte Inhalt vonEine kurze Analyse, wie man einen Git-Server lokal in Windows erstellt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

    Heiße KI -Werkzeuge

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    Video Face Swap

    Video Face Swap

    Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Heiße Themen

    PHP-Tutorial
    1509
    276
    Wie füge ich meinem Git -Repository einen Unterbaum hinzu? Wie füge ich meinem Git -Repository einen Unterbaum hinzu? Jul 16, 2025 am 01:48 AM

    Um einem Git-Repository ein Subtree hinzuzufügen, fügen Sie zuerst das Remote-Repository hinzu und holen Sie sich seinen Verlauf und fusionieren Sie es dann mit den Befehlen gitmerge und gitread tree in ein Unterverzeichnis. Die Schritte sind wie folgt: 1. Verwenden Sie den Befehl gitremoteadd-f, um ein Remote-Repository hinzuzufügen; 2. Führen Sie Gitmerge-Screcursive-No-Commit aus, um Zweiginhalte zu erhalten. 3.. Verwenden Sie GitRead-Tree-Prefix =, um das Verzeichnis anzugeben, um das Projekt als Subtree zusammenzuführen; V. 5. Bei der Aktualisierung zuerst Gitfetch und wiederholen Sie die Verschmelzung und Schritte, um das Update einzureichen. Diese Methode hält die externe Projekthistorie vollständig und leicht zu warten.

    Wie erzwinge ich einen Git -Zweig löschen, auch wenn er nicht verschmolzen ist? Wie erzwinge ich einen Git -Zweig löschen, auch wenn er nicht verschmolzen ist? Jul 14, 2025 am 12:10 AM

    Verwenden Sie den Befehl gitbranch-d, um einen unmerierigen Git-Zweig zu löschen. Dieser Befehl ignoriert den Zusammenführungsstatus des Zweigs und löscht ihn direkt. Es ist für nutzlose Zweige geeignet, nachdem sie getestet, abgebrochene Feature -Zweige oder örtliche alte Zweige, die aus der Ferne nachgebildet werden müssen, geeignet sind. Es ist jedoch zu beachten, dass das Einreichungsaufzeichnung nach dem Löschen immer noch lokal vorhanden ist und schließlich vom Mülleimermechanismus aufgeräumt wird. Nach falscher Löschung kann es durch Giterflog wiederhergestellt werden, aber die Fensterperiode ist kurz. Stellen Sie daher vor der Ausführung sicher, dass die Zweigstelle nutzlos, überflutet ist und der Name korrekt ist, um Datenverlust zu vermeiden.

    Wie erstelle ich einen Zweig aus einem Vorrat? Wie erstelle ich einen Zweig aus einem Vorrat? Jul 14, 2025 am 12:47 AM

    TocreateabranchfromastashinGit,firstlistyourstasheswithgitstashlisttoidentifythecorrectone.Next,createanewbranchusinggitcheckout-bnew-branch-name,thenapplythestashviagitstashapplystash@{0}.Optionally,committheappliedchangeswithgitadd.andgitcommit-m&q

    Wie erstelle ich einen Merge-Commit, auch wenn ein Schnellvorlauf möglich ist? Wie erstelle ich einen Merge-Commit, auch wenn ein Schnellvorlauf möglich ist? Jul 21, 2025 am 02:22 AM

    Verwenden Sie Gitmerge-No-FF, um Git zu zwingen, Merge-Commits zu erstellen, auch wenn Sie schnell vorwärts gehen können. 1. Verwenden Sie den Parameter-no-fF, um die Zweighistorie zu erhalten und die Quelle des Wandels zu klären. 2. Diese Methode ist besonders nützlich während der Codeüberprüfung oder -prüfung und wird häufig in strengen Zweigstrategien wie Gitflow verwendet. 3. Diese Operation kann automatisiert werden, indem Alias oder Skripte wie GitConfig-Globalalias.Merge-noff '! Gitmerge-no-FF' konfiguriert werden, wodurch der Prozess vereinfacht wird.

    Wie erstelle ich in einem Befehl einen neuen Git -Zweig? Wie erstelle ich in einem Befehl einen neuen Git -Zweig? Jul 16, 2025 am 01:39 AM

    Ja, Sie können einen Befehl verwenden, um einen neuen Git-Zweig zu erstellen und zu wechseln. 2. Verwenden Sie Gokcheckout-B: Dies ist eine ältere, aber häufig verwendete Methode, beispielsweise hat Gokcheckout-BNew-Feature den gleichen Effekt wie erstere. Hinweis: GitSwitch wurde in Git2.23 eingeführt, und alte Versionen müssen Goketheckout verwenden. Sie können den Zweig basierend auf anderen Zweigen angeben, wie z. B. GitSwitch-Cnew-

    Wie entferne ich ein Submodul aus meinem Git -Repository? Wie entferne ich ein Submodul aus meinem Git -Repository? Jul 19, 2025 am 01:19 AM

    TocleanlyRemoveAgitsubmodule, FirstDeinitializeItWithGitSubmoduledeinit-Fad/to/submodule, ThendeleteEtsFilesviardrf.git/modu les/path/to/submoduleandgitrm-fad/to/submodule, und endgültigRemoverelatedEntries von.git/configand.gitmodulesBeForecommitttt

    Wie man einen gelöschten Zweig mit Git -Reflog wiederherstellt Wie man einen gelöschten Zweig mit Git -Reflog wiederherstellt Jul 25, 2025 am 12:46 AM

    RUNGIREFLOG--date = localToviewRecentReferencechangesandlocatethededEletedbranchbyitsNameorCommithash.2.IdentifytheCommithaNtoBeforee "Deletedbranch" MessageinTheReFrogoutput.3.RecreatetheBanchuchusedgitchout-Bbranch-Namecommit-Hash-Hash oder

    Wie konfiguriere ich Git mit meinem Benutzernamen und meiner E -Mail -Adresse? Wie konfiguriere ich Git mit meinem Benutzernamen und meiner E -Mail -Adresse? Jul 23, 2025 am 02:57 AM

    Die Methode zum Festlegen des Git-Benutzernamens und des Mailbox besteht darin, die Befehle von GitConfig-Globaluser.name und GitConfig-GlobalUser.Email zu verwenden, um die Identitätsinformationen global zu konfigurieren. Die spezifischen Schritte sind wie folgt: 1. Setzen Sie den Benutzernamen: Gitconfig-Globaluser.Name "Yourname" ausführen; 2. Konfigurieren Sie das Mailbox: Gitconfig-GloBaluser.Email "your.email@example.com"; 1. Überprüfen Sie die Einstellungen: Geben Sie GitConfiguser.name und Gitco über

    See all articles