當前位置:編程學習大全網 - 源碼下載 - 如何在mac上使用git連接私有的gitlab服務器

如何在mac上使用git連接私有的gitlab服務器

首先要 ssh遠程登陸工具比secureCRT等

案 基於SSH直接搭建

Git支持協議主要四種:

本: 需要文件***享系統權限控制

HTTP:速度慢

SSH:同支持讀寫操作支持匿名讀取(Git默認協議)

GIT:快

搭建難易程度特點綜合篩選合適ssh並且部服務器基本都ssh服務所省少麻煩基本思路給每ssh帳號家通用戶名口令訪問顯選擇做些余並且於repo權限難管理

使用Github候利用rsa.pub公鑰/私鑰式服務端擁用戶公鑰(*.pub)跨繁瑣口令直接認證提交服務端根據同用戶身份其權限著更加靈管理我采用種式

服務端

使遠程庫訪問更加直觀先服務器創建名git賬戶clone候面格式:

git clone git@server:some.git

創建新用戶創建repo等目錄

$sudo adduser git

$su git

$cd ~

$mkdir repos

HOME.ssh目錄沒則創建創建authorized_keys文件文件用管理所git用戶公鑰面用戶於項目著R+W權限

客戶端

於每客戶端我需要密鑰公鑰Github用戶.ssh目錄定id_rsa.pubid_rsa兩文件其第系統公鑰另自要保存密鑰沒終端執行:ssh-keygen完自公鑰提交給管理員註冊行

步管理員團隊員公鑰添加authorized_keys比同susie加入:

$ cat susie.pub >> authorized_keys

至家通git@server:repos/some.git訪問公***版本庫

問題

安全問題員登錄git用戶shell,細節權限支等控制

管理麻煩新建repo,或者增加員比較麻煩尤其修改候

案二 使用Gitolite服務

Gitolite 基於SSH協議構建便管理git repo應用通其源碼安裝.

安裝

安裝按照官給定文檔輕易實現:

$ git clone git://github.com/sitaramc/gitolite

$ mkdir -p $HOME/bin

$ gitolite/install -to $HOME/bin

$ gitolite setup -pk YourName.pub

執行條命令候gitolite識別則通面兩種式解決:

gitolite添加PATH面

通$HOME/bin/gitolite setup -pk YourName.pub 執行

至gitolite服務端搭建完畢發現HOME目錄增加文件projects.list目錄repositories,者我版本倉庫每新建repo候其創建

使用

候說gitolite管理模式創建gitolite-adminrepo管理員通像repo提交配置文件實現git服務器控制

首先repo導入我workspace:前需要配置本ssh,gitolite要求管理員本密鑰其註冊公鑰名字致比我安裝候指定 -pk面 admin.pub 則管理員本需要由admin應私鑰我通~/.ssh/config進行配置(註:些系統用confMac OSX 效能用config).

host gitolite

user git

hostname yourhostname.com

port 22

identityfile ~/.ssh/admin

我訪問gitolite候自根據配置文件執行配置完根據面命令gitolite-admin轉移本

git clone gitolite:gitolite-admin.git

克隆完發現gitolite-admin面兩目錄其conf保存配置文件我通編輯面gitolite.conf文件管理git服務器keydir目錄保存用戶公鑰pub文件

我講修改repo 提交候gitolite自應用些配置管理程便

配置規則

打gitolite.conf文件看其示例:

To add new users alice, bob, and carol, obtain their public keys and add them to 'keydir' as alice.pub, bob.pub, and carol.pub respectively.

To add a new repo 'foo' and give different levels of access to these users, edit the file 'conf/gitolite.conf' and add lines like this:

repo foo

RW+ = alice

RW = bob

R = carol

面配置文件新建repo foo並且添加三位項目員每權限同提交push管理便效

視化

我能需要web界面管理些項目我目前知道三種式:

git源碼自帶組件cgi腳本實現使用gitolite服務

gitlab源框架基於ROR新版本再使用gitolite服務

FB源PHP框架 phabricator功能高端檔

  • 上一篇:源代碼泄漏再現
  • 下一篇:科洛卡莉亞,看似走偏的路線,實則是終極目標。
  • copyright 2024編程學習大全網