Rumah > Tutorial sistem > LINUX > teks badan

Bagaimana untuk menggunakan pelayan Git pada Linux untuk menjadikan pengurusan kod anda lebih cekap

PHPz
Lepaskan: 2024-02-09 23:09:12
ke hadapan
456 orang telah melayarinya

Git ialah sistem kawalan versi teragih yang membolehkan anda membangunkan dan mengurus kod secara kolaboratif pada peranti yang berbeza. Jika anda ingin menyediakan pelayan Git di Linux supaya pasukan anda boleh berkongsi dan menyegerakkan kod dengan mudah, maka artikel ini adalah untuk anda. Kami akan memperkenalkan anda cara memasang perisian berkaitan Git di Linux, cara menggunakan Gitosis untuk mengurus pengguna dan gudang, dan cara menggunakan SSH untuk mengakses pelayan Git dengan selamat. Sama ada anda seorang pemula Linux atau pakar Git, artikel ini boleh membantu anda menyediakan pelayan Git dengan cepat dan menjadikan pengurusan kod anda lebih cekap.

Bagaimana untuk menggunakan pelayan Git pada Linux untuk menjadikan pengurusan kod anda lebih cekap

Persekitaran bangunan:

Pelayan CentOS6.6 + git (versi 1.8.3.1)

Pelanggan Windows10 + git (versi 2.11.1.windows.1)

1. Pasang perisian berkaitan Git

Linux ialah sistem pelayan, Windows ialah sistem klien, dan Git dipasang masing-masing

Pasang pelayan:

[root@linuxprobe ~]# yum install -y git
[root@localhost ~]# git --version     //安装完后,查看 Git 版本
git version 1.8.3.1
Salin selepas log masuk

Pasang pelanggan:

Muat turun Git untuk Windows, alamat: https://git-for-windows.github.io/

Selepas pemasangan, anda boleh menggunakan Git Bash sebagai pelanggan baris arahan.

$ git --version
git version 2.11.1.windows.1       //安装完之后,查看Git版本
Salin selepas log masuk

Pasang 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
Salin selepas log masuk

Mesej berikut muncul, menunjukkan bahawa pemasangan berjaya

 Using /usr/lib/python2.6/site-packages
 Finished processing dependencies for gitosis==0.2
Salin selepas log masuk

2. Cipta pengguna git di bahagian pelayan untuk menguruskan perkhidmatan Git

[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用户下
Salin selepas log masuk

3. Konfigurasikan kunci awam

Konfigurasikan pengurus pada Windows Pelayan git memerlukan beberapa pengurus Muat naik kunci awam mesin pembangun ke pelayan, tambahkannya sebagai pengurus pelayan git, dan buka baris arahan git.

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

4. Konfigurasi gitosis

Gunakan pengguna git dan mulakan gitosis

[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     //添加权限
Salin selepas log masuk

Klon gitosis-admin pada mesin Windows kepada hos pentadbir

$ git clone ssh://git@192.168.34.184:22/gitosis-admin.git
$ cd gitosis-admin
$ ls
$ gitosis.conf keydir
Salin selepas log masuk

gitosis.conf: fail konfigurasi pelayan git

keydir: menyimpan kunci awam pelanggan

Konfigurasi

gitosis.confFail

$ vim gitosis.conf
[gitosis]

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

[group test]               //这里添加了"test"项目组,上传到个git服务器
members = yueyong@SHA2-001
writable = test
Salin selepas log masuk

Buat repositori ujian tempatan pada mesin pentadbir Windows dan muat naik ke pelayan git

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

Serahkan ke pelayan jauh

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

Pelayan secara automatik akan membuat gudang ujian

[git@repositories]# pwd
/home/git/repositories
[git@linuxprobe repositories]$ ls
gitosis-admin.git  test.git
Salin selepas log masuk

5. Tambah pembangun pengguna git yang lain

Disebabkan peningkatan bilangan orang dalam pasukan pembangunan syarikat, adalah menyusahkan untuk menambah kunci peribadi pembangun secara manual ke /home/git/.ssh/authorized_keys Pentadbir mesin Windows di atas mengumpul fail kunci peribadi id_rsa.pub daripada pembangun lain, dan kemudian Selepas ia dimuat naik ke pelayan dan dikonfigurasikan, pengguna akan mendapatkan kebenaran projek dan boleh menarik dan menolak projek dari gudang jauh untuk mencapai projek pembangunan bersama.

$ 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
Salin selepas log masuk

Selepas push selesai, pembangun yang baru ditambah boleh membangunkan projek tersebut. Penambahan kakitangan seterusnya boleh ditambah dengan cara ini, dan pembangun boleh mengklon terus gudang.

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
这样就可以了。
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menggunakan pelayan Git pada Linux untuk menjadikan pengurusan kod anda lebih cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:lxlinux.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan