1、開發者的生成公鑰
開發者本地進入~/.ssh中執行ssh-keygen命令,會生成id_rsa(私鑰)id_rsa.pub(公鑰)。
將id_rsa.pub傳送至伺服器端。
2、架設git伺服器。
a.建立git組,新增乙個git使用者並新增至該組中。
adduser git 建立git使用者
passwd git 建立git使用者的密碼,輸入兩遍(如果不需密碼,可以不設)
su git 切換git使用者
cd ~ 進入git的家目錄
mkdir .ssh 建立ssh配置目錄
cd .ssh
將開發者的公鑰內容寫入authorized_keys檔案,乙個一行,多個使用者多行。也可將使用者的公鑰傳送至git所在伺服器,執行命令寫入該檔案,如下命令。
cat /home/zhangsan/id_rsa.pub >> /home/git/.ssh/authorized_keys
b.在git目錄中建立空的倉庫
mkdir project1.git project1是你的專案名稱,未來開發者clone時,生成的檔案目錄名字則為該名
cd project1.git
git --bare init 使用 --bare 會生成乙個工作目錄的倉庫,不會看到**。
git:x:
502:
502::
/home/git
:/bin/bash 改為:
git:x:
502:
502::
/home/git
:/user/bin/git-shell
3.開發者端
開發者端該有的操作這裡就不一一贅述。但要注意的一點是,假如,你的本地服務pull報錯或push報錯,是伺服器端git沒有配置好,常見報錯如下:
bash: git-receive-pack: command not found
fatal: could not read from remote repository.
以及bash: git-upload-pack: command not found
fatal: could not read from remote repository.
解決辦法:
需要到伺服器端將git-receive-pack和git-upload-pack鏈結到/usr/bin/中:
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
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伺...