Heim > System-Tutorial > LINUX > Hauptteil

So stellen Sie einen Git-Server unter Linux bereit, um Ihre Codeverwaltung effizienter zu gestalten

PHPz
Freigeben: 2024-02-09 23:09:12
nach vorne
440 Leute haben es durchsucht

Git ist ein verteiltes Versionskontrollsystem, mit dem Sie gemeinsam Code auf verschiedenen Geräten entwickeln und verwalten können. Wenn Sie einen Git-Server unter Linux einrichten möchten, damit Ihr Team problemlos Code teilen und synchronisieren kann, dann ist dieser Artikel genau das Richtige für Sie. Wir zeigen Ihnen, wie Sie Git-bezogene Software unter Linux installieren, wie Sie Gitosis zur Verwaltung von Benutzern und Warehouses verwenden und wie Sie mit SSH sicher auf Git-Server zugreifen. Egal, ob Sie ein Linux-Neuling oder ein Git-Meister sind, dieser Artikel kann Ihnen dabei helfen, schnell einen Git-Server einzurichten und Ihre Codeverwaltung effizienter zu gestalten.

So stellen Sie einen Git-Server unter Linux bereit, um Ihre Codeverwaltung effizienter zu gestalten

Gebäudeumgebung:

Server CentOS6.6 + Git (Version 1.8.3.1)

Client Windows10 + Git (Version 2.11.1.windows.1)

1. Installieren Sie Git-bezogene Software

Linux ist das Serversystem, Windows ist das Clientsystem und Git ist jeweils installiert

Installieren Sie den Server:

[root@linuxprobe ~]# yum install -y git
[root@localhost ~]# git --version     //安装完后,查看 Git 版本
git version 1.8.3.1
Nach dem Login kopieren

Installieren Sie den Client:

Laden Sie Git für Windows herunter, Adresse: https://git-for-windows.github.io/

Nach der Installation können Sie Git Bash als Befehlszeilen-Client verwenden.

$ git --version
git version 2.11.1.windows.1       //安装完之后,查看Git版本
Nach dem Login kopieren

Installieren Sie Gitosis

[root@linuxprobe ~]# cd software/
[root@linuxprobe software]# git clone https://github.com/res0nat0r/gitosis.git
[root@linuxprobe software]# yum install python-setuptools -y
[root@linuxprobe software]# cd gitosis
[root@linuxprobe gitosis]# sudo python setup.py install
Nach dem Login kopieren

Die folgende Meldung erscheint und zeigt an, dass die Installation erfolgreich war

 Using /usr/lib/python2.6/site-packages
 Finished processing dependencies for gitosis==0.2
Nach dem Login kopieren

2. Erstellen Sie einen Git-Benutzer auf der Serverseite, um den Git-Dienst zu verwalten

[root@linuxprobe ~]# id git      //查看git用户是否存在
id: git: no such user
[root@linuxprobe ~]# useradd git
[root@linuxprobe ~]# echo "123" | passwd --stdin git
[root@linuxprobe ~]# su - git   //切换到git用户下
Nach dem Login kopieren

3. Öffentlichen Schlüssel konfigurieren

Konfigurieren Sie den Manager unter Windows. Laden Sie den öffentlichen Schlüssel des Entwicklercomputers auf den Server hoch, fügen Sie ihn als Manager des Git-Servers hinzu und öffnen Sie die Git-Befehlszeile

$ ssh-keygen -t rsa     //一直回车,不需要设置密码
~ scp ~/.ssh/id_rsa.pub git@192.168.34.184:~    //复制到git服务器上
Nach dem Login kopieren

4. Konfigurieren Sie Gitosis

Git-Benutzer verwenden und Gitosis initialisieren

[root@linuxprobe ~]# cd .ssh
[root@linuxprobe ~]# gitosis-init 
Initialized empty Git repository in /home/git/repositories/gitosis-admin.git/
Reinitialized existing Git repository in /home/git/repositories/gitosis-admin.git/
[root@linuxprobe ~]# chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update     //添加权限
Nach dem Login kopieren

Klonen Sie gitosis-admin auf dem Windows-Computer auf den Administrator-Host

$ git clone ssh://git@192.168.34.184:22/gitosis-admin.git
$ cd gitosis-admin
$ ls
$ gitosis.conf keydir
Nach dem Login kopieren

gitosis.conf: Git-Server-Konfigurationsdatei

keydir: speichert den öffentlichen Schlüssel des Kunden

Konfiguration

gitosis.confDatei

$ vim gitosis.conf
[gitosis]

[group gitosis-admin]            #组名称
members = yueyong@SHA2-001       #组成员
writable = gitosis-admin         #项目名称

[group test]               //这里添加了"test"项目组,上传到个git服务器
members = yueyong@SHA2-001
writable = test
Nach dem Login kopieren

Erstellen Sie ein lokales Test-Repository auf dem Windows-Administratorcomputer und laden Sie es auf den Git-Server hoch

$ git config --global user.name "Your Name"         //第一次提交需要设置个人信息,设置用户名和邮箱
$ git config --global user.email "email@example.com"
$ cd ~/repo 
$ mkdir test
$ git init
$ tocuh readme.txt
Nach dem Login kopieren

An Remote-Server senden

$ git add .
$ git commit -a -m 'init test'
$ git remote add repo git@192.168.186.129:test.git   //repo 远程库的名称,可以换成任意名称
$ git push repo master    //上传本地所有分支代码到远程对应的分支上
Nach dem Login kopieren

Der Server erstellt automatisch ein Testlager

[git@repositories]# pwd
/home/git/repositories
[git@linuxprobe repositories]$ ls
gitosis-admin.git  test.git
Nach dem Login kopieren

5. Weitere Git-Benutzerentwickler hinzufügen

Aufgrund der zunehmenden Anzahl von Personen im Entwicklungsteam des Unternehmens ist es mühsam, den privaten Schlüssel des Entwicklers manuell zu /home/git/.ssh/authorized_keys hinzuzufügen. Der Administrator des oben genannten Windows-Computers sammelt die private Schlüsseldatei id_rsa.pub von anderen Entwicklern und dann Nach dem Hochladen auf den Server und der Konfiguration erhält der Benutzer Projektberechtigungen und kann Projekte aus dem Remote-Warehouse ziehen und pushen, um gemeinsame Entwicklungsprojekte zu erreichen.

$ cd ~/gitosis-admin/keydir
$ mv ~/id_rsa.pub zhangsan@SHA2-002.pub          //修改公钥为主机名.pub
$ vim gitosis.conf
  [group test]
  writable = test
  members = yueyong@SHA2-001 zhangsan@SHA2-002    //添加成员
$ git add .
$ git commit -m "add zhangsan@SHA2-002 pub and update gitosis.conf"
$ git push repo master
Nach dem Login kopieren

Nachdem der Push abgeschlossen ist, können die neu hinzugefügten Entwickler das Projekt weiterentwickeln. Auf diese Weise können die Entwickler das Lager direkt klonen.

git clone git@192.168.34.184:/home/git/repositories/test.git
报错问题:ERROR:gitosis serve main repository read access denied
根据这个报错,可以看出key是没问题的,通过排查,发现不应该把这个/home/git/repositories/test.git写全,
git clone git@192.168.34.184:test.git
这样就可以了。
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo stellen Sie einen Git-Server unter Linux bereit, um Ihre Codeverwaltung effizienter zu gestalten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:lxlinux.net
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!