本地win7系統,須要安裝gitbashlinux
服務器是我租的阿里雲服務器 版本是ubuntu-14.04.5git
使用putty(一個小工具)遠程鏈接linux服務器,鏈接時會讓你輸入用戶名,默認都是root,密碼爲了安全起見,你在輸入時是看不到的,成功登錄後就會進入控制檯,咱們用命令完成全部的操做,下面就是詳細的步驟.shell
注:以後在本地輸入的命令都是在gitbash下完成的ubuntu
一、在控制檯輸入命令sudo apt-get install git
,安裝git,若是你是新安裝的ubuntu,直接安裝可能會報錯,須要先執行sudo apt-get update
vim
二、在系統裏新增一個用戶,登陸名爲git,安全
sudo adduser git
接着就會讓你輸入密碼及一些用戶信息,一直回車就行bash
三、初始化git倉庫服務器
進入git目錄,新建文件夾travel做爲代碼倉庫ssh
cd /home/git mkdir travel cd travel git init --bare travel.git
其中--bare參數是爲用戶建立一個裸倉庫,這個’裸‘的意思就是版本庫裏之後只會生成版本的歷史記錄信息,而不會有項目源文件的拷貝。不使用--bare選項時,就會生成.git目錄以及其下的版本歷史記錄文件,這些版本歷史記錄文件就存放在.git目錄下;而使用--bare選項時,再也不生成.git目錄,而是隻生成.git目錄下面的版本歷史記錄文件,這些版本歷史記錄文件也再也不存放在.git目錄下面,而是直接存放在版本庫的根目錄下面。工具
使用裸倉庫最根本的緣由是爲了不衝突,若是有人在服務器上操做倉庫的master分支,那麼若是別的用戶經過遠端倉庫的方式push代碼到master分支,會有很大的機率發生衝突,因此使用--bare參數讓用戶沒法在服務器上操做git倉庫。
4.在本地的win7系統生成ssh key
先檢查本地有沒有ssh key 快捷鍵Win+R
打開運行,輸入%userprofile%
,進入用戶目錄,看看有沒有.ssh文件,
若是沒有我們手動生成一下
ssh-keygen -t rsa
或者生成一個帶有你郵箱信息的ssh-key
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
以後就會讓你輸入一些ssh key的信息,一直回車就行,以後就能夠看到.ssh文件了,裏面有兩個文件
id_rsa:稱爲私鑰
id_rsa.pub:稱爲公鑰,咱們須要把公鑰裏的信息存入到服務器的/home/git/.ssh/authorized_keys文件中
authorized_keys是專門用來存公鑰的地方。
把用scp命令將id_rsa.pub上傳到服務器。
這裏要分爲三步:
第一步:在linux服務上執行命令
cd /home/git mkdir .ssh chmod 777 /home/git/.ssh 這個命令是放開.ssh的讀寫權限,不然以後的賦值操做會提示沒有權限
第二步:在你本地執行下列命令,使用scp命令吧id_rsa.pub複製到服務器的/home/git/.ssh這個目錄下
scp ~/.ssh/id_rsa.pub git@[你服務器的外網ip地址]:/home/git/.ssh 例如 scp ~/.ssh/id_rsa.pub git@60.205.189.99:/home/git/.ssh
第三步:在linux服務器上將id_rsa.pub的名稱改成authorized_keys
mv id_rsa.pub authorized_ke
好了如今就完成了將本地公鑰添加到服務器,仍是比較麻煩的。
五、修改文件的全部者,將/home/git目錄下的全部文件及文件夾歸git用戶全部,並修改目錄權限chmod 755 /home/git,在服務器上依次鍵入下列命令
chown -R git:git /home/git chmod 755 /home/git chmod 700 .ssh chmod 600 .ssh/authorized_keys
六、修改ssh配置文件,修改完以後重啓ssh
vim /etc/ssh/sshd_config service ssh restart
AuthorizedKeysFile這個配置項默認是被註釋掉的,如今刪掉前邊的#就行。
到這裏咱們的私人git服務器就搭建好了,下面就看看能不能push和pull代碼吧。
這裏你得找到你的git服務器地址,根據這個教程,咱們的服務器地址應該是這個
git@60.205.189.99:/home/git/travel/travel.git
在本地gitbash下鍵入命令
git clone git@60.205.189.99:/home/git/travel/travel.git
輸入完這個命令你就能夠把服務器上的倉庫獲取到你本地
以後使用以下命令,進行上傳代碼,獲取代碼。
git add git commit git push git pull
今天的文章就到這裏,歡迎你們留言。。。。。。。