安裝 ssh 與 git
安裝 gitosissudo apt-get install git-core openssh-server openssh-client
//設定 git 全域性的⽤⼾名與郵箱
git config --global user.name "myname"
git config --global user.email "myemail@gmail.com"
通常情況下,⾄少需要兩個⽤⼾來使⽤ gitosis 來管理 git 倉庫,⼀個是倉庫伺服器的所有者,⼀個是倉庫成員。//先安裝 python-setuptools,再⽤ python 安裝 gitosis
sudo apt-get install python-setuptools
//clone 官⽅ github 倉庫,⾃⾏選擇 clone 到哪個⽬錄
//注意:中間有兩個是數字零
cd gitosis/
sudo python setup.py install
. 倉庫伺服器的所有者能夠建立新的倉庫
.倉庫成員可以拉取⾃⼰所在的倉庫,如果有寫許可權,可以將修改提交到到服務端上去
gitosis 的配置⽂件也是以 git 倉庫的形式儲存的,所以需要⼀個倉庫成員來管理這些配置⽂件,初始化gitosis 需要指定⼀個公鑰⽂件,該⽂件的所有者就是配置⽂件倉庫的成員,可以把他當做是管理員,負責收集其他倉庫成員的公鑰與編輯配置⽂件。
建立倉庫成員
倉庫成員只需要將本地的 ssh 公鑰,提交給管理管理 gitosis 的配置⽂件的⼈即可,管理員負責倉庫成員的配置。
⽣成公鑰
建立倉庫伺服器所有者ssh-keygen -t rsa
//到⽬標 ~/.ssh/ 下可以看到⽣成的公鑰⽂件 id_rsa.pub
cd ~
/.ssh
//將公鑰⽂件複製⼀份,⽂件名修改為本地的⽤⼾名與主機名,類似 name@computer.pub 這種形式
cp .
/id_rsa.pub name@computer.pub
//傳送到到 gitosis 配置管理員的⼿上
scp ~
/.ssh/name@computer.pub [管理員⽤⼾名]@[管理員的ip]
:[要傳送到的⽬標⽬錄]
配置檔案的使用# ⼀般是⼀個新的系統⽤⼾
sudo useradd -m git
# 設定密碼
sudo passwd git
# 切換到該⽤⼾
su git
# 初始化 gitosis
sudo -h -u git gitosis-init <
[負責管理配置⽂件的⼈的公鑰]
# 初始化完成後,進⼊到⽤⼾⽬錄下,可以看到⽣成了兩個新⽬錄,其中的 repositories/ 是⽤來存放 git 倉庫
的# 修改 repositories/ ⽬錄的⽤⼾許可權,僅允許 git ⽤⼾即倉庫伺服器所有者進⾏操作
sudo chown git:git /home/git/repositories
sudo chmod 755
/home/git/repositories/gitosis-admin.git/hooks/post-update
sudo chmod 755
/home/git/repositories
以下操作均由配置⽂件倉庫 gitosis-admin 的成員來完成
建立新的倉庫# 管理配置⽂件的⽤⼾,將伺服器上的配置⽂件倉庫 clone 下來
git clone git@[伺服器的位址]
:gitosis-admin.git
# 進⼊ gitosis-admin ⽬錄中,可以看到⼀個配置⽂件 gitosis.conf 與⼀個⽬錄 keydir/
# gitosis.conf 中可以為每⼀個倉庫配置成員與許可權等資訊
# keydir/ ⽬錄儲存所有倉庫成員的 ssh 公鑰
vim gitosis.conf
# 開啟 gitosis.conf
# 其中的 group 標籤是分組;
# writable 的值是倉庫的名稱,需要 repositories/ ⽬錄下存在同樣名稱的倉庫⽬錄,並以「.git」作為⽬錄名
的字尾;
# member 的值是該標籤下分組下的所有倉庫的成員,多個成員⽤空格隔開,成員的名稱需要與 keydir/ ⽬錄
下的公鑰⽂件名相同;
# 修改 gitosis.conf 或者新增了新的公鑰到 keydir/ ⽬錄下後,只需要像⼀般的 git 倉庫⼀樣將修改提交到遠端
倉庫即可應⽤新的配置;
git add .
git commit -m "描述改變的內容"
git push origin master
建立倉庫需要兩個⽤⼾進⾏操作,git ⽤⼾建立新的倉庫,配置⽂件管理員為新倉庫編寫新的配置項並提交修改。
例如新增了新倉庫 test,並將成員 member1@group1 與 member2@group1 設定為倉庫成員,在gitosis.conf ⽂件中新增:# git ⽤⼾建立新倉庫
su - git
cd ~
/repositories/
git init --bare [倉庫名]
.git
# 配置⽂件管理員修改配置項
su -
[管理員賬號]
cd [gitosis-admin 倉庫所在的⽬錄]
vim gitosis.conf
# 為新倉庫新增分組和成員
許可權管理[group test]
wirtable = test
members = member1@group1 member2@group1
gitosis 僅僅提供了⾮常簡單的許可權控制,預設情況下,倉庫成員擁有倉庫的讀寫許可權,可通過新增配置項,讓⼀部分成員只能夠讀取倉庫,⽆法提交修改。例如把上⾯例⼦中的成員 member2@group1,設定為唯讀許可權,在配置⽂件中可以這樣寫:
倉庫成員 clone 倉庫[group test]
wirtable = test
members = member1@group1
[group test_readonly]
readonly = test
members = member2@group1
具有讀許可權的成員才能夠成功 clone 到本地。git clone git@[伺服器位址]
:[倉庫名]
.git
具有寫許可權的成員可以將修改提交到伺服器的倉庫上。
ubuntu 18 04搭建testlink伺服器
安裝xampp chmod 755 xampp linux x64 7.3.6 2 installer.run sudo xampp linux x64 7.3.6 2 installer.run,全部選擇y,預設安裝在 opt lampp中 啟動xampp sudo opt lampp lampp...
Ubuntu18 04搭建nodejs環境
首先安裝sudo apt install curl 然後安裝命令 當前最新版本是0.33.2,最新版本可以在檢視 curl o bash 安裝後重啟shell通過以下命令檢視nvm版本 nvm version檢視所有node版本 nvm ls remote 可能由於版本過多導致比較慢,比如此時nod...
在Ubuntu18 04搭建node環境 筆記
1.更新apt sudo apt update2.安裝nodejs sudo apt get install nodejs3.輸入node v 出現版本資訊 就表示安裝成功了 root vm 0 7 ubuntu home ubuntu node v v8.10.04.安裝npm sudo apt ...