>개발 도구 >자식 >Windows에서 로컬로 Git 서버를 구축하는 방법에 대한 간략한 분석

Windows에서 로컬로 Git 서버를 구축하는 방법에 대한 간략한 분석

PHPz
PHPz원래의
2023-04-03 09:20:572223검색

Git의 인기로 인해 점점 더 많은 회사와 개인이 버전 관리를 위해 Git을 사용하기 시작했습니다. Github, Gitlab, Bitbucket과 같은 온라인 Git 호스팅 서비스가 많이 있지만 일부 개발자에게는 로컬 Git 서버를 구축하는 것이 매우 필요합니다. 이 기사에서는 Windows 시스템에서 Git 서버를 설정하는 방법을 소개합니다.

  1. Git 설치

먼저 Windows 시스템에 Git 소프트웨어를 설치해야 합니다. Git 공식 홈페이지에서 최신 Git 설치 패키지를 다운로드하여 안내에 따라 설치하시면 됩니다. 설치 프로세스 중에 기본 설정을 선택할 수 있으며 수정할 필요가 없습니다.

  1. Git 저장소 만들기

Git를 설치한 후 로컬에서 Git 저장소를 만들어야 합니다. 다음 명령을 사용하여 저장소를 생성할 수 있습니다.

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

여기서 /path/to/repo.git는 Git 저장소의 저장 경로입니다. 필요에 따라 다른 경로를 선택할 수 있습니다. 이 명령은 코드 및 버전 정보를 저장하기 위한 베어웨어하우스를 생성합니다. /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. 권한 구성
    1. Git 서버를 구축할 때 권한 설정에 주의해야 합니다. 다음 단계를 통해 권한을 구성할 수 있습니다.
      Git 웨어하우스의 구성 파일 config 파일을 엽니다. 경로는 repo.git/config입니다.

      [core] 태그 아래에 다음 코드를 추가하세요: 🎜🎜rrreee🎜 이 구성의 기능은 현재 분기에 대한 쓰기 권한을 여는 것입니다. 로컬로 구축된 Git 서버에서는 쓰기 권한이 있는 관리자나 사용자만 웨어하우스를 수정할 수 있기 때문입니다. 🎜
      🎜SSH 서비스 활성화🎜🎜🎜Windows 시스템에서는 코드 전송을 위해 SSH 프로토콜을 사용해야 합니다. 따라서 SSH 서비스를 활성화하려면 OpenSSH를 설치해야 합니다. OpenSSH 공식 웹사이트에서 최신 OpenSSH 설치 패키지를 다운로드하고 지침에 따라 설치할 수 있습니다. 🎜
        🎜SSH 서비스 구성🎜🎜🎜OpenSSH를 설치한 후 SSH 서비스를 구성해야 합니다. 다음 단계를 통해 구성할 수 있습니다. 🎜
      🎜 OpenSSH 설치 디렉터리에서 etcsshd_config 파일을 엽니다(예: C:Program FilesOpenSSHetcsshd_config). 🎜🎜끝에 다음 콘텐츠를 추가하세요. 🎜🎜rrreee🎜여기서 git는 사용자 이름이고, C:Program FilesGitbingit.exe는 Git 명령의 경로입니다. D:git -shell-commandsgit-receive-pack.exe는 Git 수신 명령이고, D:repos는 Git 웨어하우스의 저장 경로입니다. 실제 상황에 따라 수정할 수 있습니다. 🎜
      🎜SSH 서비스 시작🎜🎜🎜SSH 서비스를 구성한 후에는 서비스를 시작해야 합니다. Windows PowerShell 창을 열고 다음 명령을 입력하여 서비스를 시작합니다. 🎜rrreee🎜 서비스가 성공적으로 시작되었는지 확인하려면 다음 명령을 입력할 수 있습니다. 🎜rrreee🎜성공적으로 시작되면 출력 상태는 실행 중입니다. 🎜
        🎜Git 서버에 연결🎜🎜🎜Git 서버를 설정한 후 연결 테스트를 수행해야 합니다. 다음 명령을 사용하여 테스트할 수 있습니다. 🎜rrreee🎜여기서 git은 사용자 이름, localhost는 IP 주소 또는 도메인 이름, /path/to/ repo.gitcode>는 Git 저장소의 저장 경로입니다. 실제 상황에 따라 수정할 수 있습니다. 🎜
          🎜Git 사용자 추가🎜🎜🎜Git 서버에서 코드를 제출하고 관리하려면 사용자를 추가해야 합니다. 다음 명령을 사용하여 사용자를 추가할 수 있습니다: 🎜rrreee🎜비밀번호를 입력하고 지침에 따라 새 사용자를 만듭니다. 🎜
            🎜SSH 공개 키 구성🎜🎜🎜SSH 공개 키를 추가하지 않으면 Git 서버에서 코드를 호스팅할 수 없습니다. 따라서 먼저 SSH 공개 키를 구성해야 합니다. 이는 다음 단계에 따라 구성할 수 있습니다: 🎜
      🎜클라이언트 시스템에서 SSH 공개 및 개인 키를 생성합니다. Windows PowerShell 창에 다음 명령을 입력합니다. 🎜🎜rrreee
        🎜생성된 공개 키를 Git 서버의 D:git-shell-commandsauthorized_keys 파일에 복사합니다. . 🎜🎜🎜🎜로컬 Git 서버 설정 완료🎜🎜🎜위는 Windows 시스템에서 Git 로컬 서버를 설정하는 모든 단계입니다. 완료 후 코드를 로컬로 제출하고 관리할 수 있습니다. Git의 분산 버전 관리 기능은 개발 프로세스를 더욱 효율적이고 편리하게 만듭니다. 이 기사가 도움이 되기를 바랍니다. 🎜

    위 내용은 Windows에서 로컬로 Git 서버를 구축하는 방법에 대한 간략한 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

    성명:
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.