以centos為例.參考自csdn
yum install -y git
2.建立乙個git使用者,專門用來執行git服務
adduser git
3.初始化git倉庫:比如我們選擇/home/git/learngit.git來作為我們的git倉庫。
git
init--
bare
learngit
.git
這條命令會在/home/git/
目錄下生成learngit.git
資料夾
4.將learngit.git
的owner改為git:
chown
-rgit
:git
learngit
.git
-r
引數非常重要,表示此資料夾及其下屬的檔案都應用此許可權,一開始配置的時候少加了-r,後面在提交**的時候會報錯:
$ git push -u origin master
counting objects: 140, done.
delta compression using up to
4 threads.
compressing objects: 100% (139/139), done.
fatal: unable to
create temporary file: permission denied
fatal: sha1 file
''write error: broken pipe
error: failed to push some refs to
'git@ip:/home/git/learngit.git'
5.git伺服器開啟rsa認證
在git伺服器上首先需要將/etc/ssh/sshd_config
中將rsa認證開啟,即:
rsaauthentication yes
pubkeyauthentication yes
authorizedkeysfile .ssh/authorized_keys
這裡我們可以看到公鑰存放在.ssh/authorized_keys檔案中。所以我們在/home/git下建立.ssh目錄,然後建立authorized_keys檔案。
在github中我們需要將ssh公鑰新增到ssh key,在我們的git伺服器上我們則是把公鑰放在authorized_keys檔案中,一行乙個。
收集所有需要登入的使用者的公鑰,把所有公鑰匯入到/home/git/.ssh/authorized_keys檔案裡,一行乙個。
git:
x:1001
:1001
:,,,:/home/git
:/bin/bash
最後乙個冒號後改為
git:
x:1001
:1001
:,,,:/home/git
:/usr/bin/git-shell
這樣,git使用者可以正常通過ssh使用git,但無法登入shell,因為我們為git使用者指定的git-shell每次一登入就自動退出。 Git 搭建git伺服器
環境 ubuntu16.4 1.以root使用者登陸linux後台,執行下面的命令安裝git apt install git2.建立git使用者 adduser git3.建立倉庫目錄 su git mkdir p repository myself.git4.初始化倉庫 cd repository...
Git 搭建Git伺服器
在遠端倉庫一節中,我們講了遠端倉庫實際上和本地倉庫沒啥不同,純粹為了7x24小時開機並交換大家的修改。github就是乙個免費託管開源 的遠端倉庫。但是對於某些視源 如生命的商業公司來說,既不想公開源 又捨不得給github交保護費,那就只能自己搭建一台git伺服器作為私有倉庫使用。搭建git伺服器...
搭建Git伺服器
在 遠端倉庫 一節中,我們講了遠端倉庫實際上和本地倉庫沒啥不同,純粹為了7x24小時開機並交換大家的修改。github就是乙個免費託管開源 的遠端倉庫。但是對於某些視源 如生命的商業公司來說,既不想公開源 又捨不得給github交保護費,那就只能自己搭建一台git伺服器作為私有倉庫使用。搭建git伺...