国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Gitolite+Gitweb配置實現(xiàn)Git權(quán)限管理教程

2024-08-27 23:59:41
字體:
供稿:網(wǎng)友

Git是一個什么東西我就不介紹了,下文介紹的主要是說Git權(quán)限的一個管理工具配置了,有興趣的和小編來學學吧.

文章中使用的server,指的是的服務器端的公網(wǎng)ip,/mnt是我的阿里云外掛盤,新建用戶不指定目標位置,會自動在/home下生成.

Gitolite配置

1、在指定目錄/mnt/git下建立一個git的用戶并給用戶git設(shè)置密碼,服務器端-用戶:root.

useradd -d /mnt/git -s /bin/bash git

passwd git

測試是否建立成功,如果通過ssh連接成功即證明用戶已經(jīng)建立成功.

ssh git@server

2、clone gitolite,服務器端-用戶:git

  1. // 切換到git用戶 
  2. su git 
  3. // 切換到git根目錄 
  4. cd 
  5. // clone gitolite 
  6. git clone https://github.com/sitaramc/gitolite.git 

成功后會在根目錄看到一個gitolites的目錄.

3、客戶端生成秘鑰(客戶端)

ssh-keygen

會在你登錄的用戶的目錄下找到.ssh目錄,我的目錄是C:/Users/new/.ssh,復制id_rsa.pub到d盤根目錄,通過ssh上傳id_rsa.pub,并重命名為admin.pub.

  1. // 切換到d盤目錄執(zhí)行 
  2. scp id_rsa.pub git@server:admin.pub 

執(zhí)行完成后,切換到服務器端可以在git用戶的根目錄下找到admin.pub.

4、開始安裝gitolite(服務器端-用戶:git),所有操作都是在git的根目錄.

注意點:進入.ssh目錄,如果有authorized_keys,刪除即可。

  1. // 新建bin目錄 
  2. mkdir bin 
  3. // 安裝gitolite,默認會安裝到bin,如果想安裝到你自己之的指定的目錄請參考官方 

安裝 -to

  1. gitolite/install -ln 
  2. // 配置秘鑰 
  3. bin/gitolite setup -pk admin.pub 

測試是否執(zhí)行成功:首先git根目錄下是否生成了projects.list和repositories,同時可以進入.ssh,可以看到新生成的authorized_keys,以后每一次提交新用戶都會寫到這個里邊,判斷是否用戶添加成功,看這個里邊文件是否新增了那個用戶的key即可.

5、客戶端clone gitolite-admin(客戶端)

  1. // 結(jié)尾不需要加.git 
  2. git clone git@server:gitolite-admin 

6、添加新用戶(客戶端)

修改gitolite-admin/conf/gitolite.conf

  1. @developer  =   weiwei1628 mac 
  2. repo gitolite-admin 
  3.     RW+     =   weiwei1628 mac 
  4. repo testing 
  5.     RW+     =   @all 
  6. repo anhei  //Vevb.com 
  7.     RW+     =   @developer 

將新用戶的key都放到keydir,push到服務器即可,查看是否成功,去服務器進入git用戶,查看.ssh/authorized_keys,里邊會多了新的key.

Gitweb配置

1、安裝(服務器端-用戶:root)

yum install gitweb

2、配置(服務器端-用戶:root)

  1. /etc/gitweb.conf 
  2. $projectroot = "/home/git/repositories/"; 

3、重啟httpd(服務器端-用戶:root)

service httpd restart

即可看到gitweb的網(wǎng)站,但是會出現(xiàn)404找不到項目的情況,這個問題是權(quán)限問題,查不不少資料,也遇到不少坑.

最終的解決方案:

首先要修改/home/git/.gitolite.rc中的UMASK,將0007修改為0027,修改git及其根目錄的讀寫權(quán)限為 755.

  1. // 切換到root,在root根目錄執(zhí)行 
  2. chmod -R 755 /mnt/git 

網(wǎng)上有配置方法,但是gitweb是找到項目了,但是客戶端有clone不下文件了,提示秘鑰沒權(quán)限.

  1. chmod g+r /mnt/git/projects.list 
  2. chmod -R g+rx /mnt/git/repositories

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 广平县| 漠河县| 贵阳市| 康平县| 汝州市| 白水县| 通城县| 济阳县| 乌拉特后旗| 肥城市| 东海县| 固始县| 中山市| 雷波县| 河池市| 黎城县| 运城市| 南充市| 永城市| 荔浦县| 泰宁县| 疏勒县| 黄大仙区| 普洱| 吉木乃县| 遂平县| 论坛| 绥棱县| 新乡市| 青冈县| 哈尔滨市| 连南| 桦南县| 黑龙江省| 本溪| 阿坝县| 三明市| 孝昌县| 西城区| 平江县| 大丰市|