GitHub是一個免費託管開源代碼的Git服務器,若是咱們不想公開項目的源代碼,又不想付費使用,那麼咱們能夠本身搭建一臺Git服務器。html
下面咱們就看看,如何在Ubuntu上搭建Git服務器。咱們使用VMware虛擬機安裝兩臺Ubantu系統,分別命名爲gitServer和gitClient_01。git
經過命令 sudo apt-get install openssh-server,安裝SSH服務。web
經過命令 ps –e|grep ssh,查看ssh服務是否啓動。服務器
經過以上命令,咱們爲Ubantu系統安裝SSH服務,並配置SSH無密碼登錄,首先咱們修改主機和ip配置文件:gedit /ect/hostsssh
在gitClient_01上,咱們使用命令:ssh-keygen –t rsa 生成密鑰,以下圖fetch
完成以後,在.ssh目錄下,咱們能夠看到id_rsa和id_rsa.pub文件,id_rsa.pub爲公鑰,咱們經過命令scp /home/git/.ssh/id_rsa.pub gitServer:/home/git將gitClient_01上生成的公鑰拷貝到gitServer上。spa
在gitServer上咱們首先查看/home/git/.ssh目錄下是否存在authorized_kesys文件,3d
若是沒有,能夠經過touch authorized_keys建立此文件。版本控制
Authorized_keys建立完成後,將gitClient_01上拷貝過來的公鑰id_rsa.pub的內容追加到authroized_keys中,注意是追加到此文件中,可使用命令cat /home/git/id_rsa.pub>>/home/git/.ssh/authorized_keys.orm
以上內容完成後,咱們在gitClient_01中,可使用命令ssh gitServer便可完成無密碼登錄。
經過命令 sudo apt-get install git-core,安裝git
使用命令 git –bare init /home/git/myRep.git,初始化化倉庫
Git clone git@gitServer:/home/git/myRep.git
經過以上的步驟咱們就完成了git服務器的搭建,完成搭建後,咱們須要瞭解一下與git服務器交互過程當中所用到命令。主要命令有 git clone、git remote、git fetch、git pull、git push等,下面咱們逐一瞭解
此命令是咱們和遠程倉庫交互的第一步,經過此命令,咱們能夠將遠程版本庫克隆到本地,如上面第7步咱們就使用了此命令,將遠程庫克隆道了本地。
語法:git clone 版本庫的網址 本地庫名稱
本地庫名稱能夠省略,省略後在本地會生成一個和遠程版本庫名字相同的目錄。
此命令用於管理遠程主機名,此命令在沒有參數的狀況下能夠列出全部主機名。
顯示origin是在使用clone命令,克隆遠程版本庫時Git自動爲遠程主機命名。
經過命令 git remote –v,可查看版本庫的網址。
此命令能夠將遠程版本庫的更新,更新到本地庫。
語法:git fetch 主機名字
在默認狀況下,git fetch origin將會更新遠程主機origin上的全部分支,若是隻想更新某個分支,則在主機名origin後面加分支名。
語法:git fetch origin master
此命令用於將本地分支的更新推送到遠程主機。
語法:git push 遠程主機名 本地分支名:遠程分支名
若是省略遠程分支名,則表示將本地分支推送與存在最終關係的遠程分支,若是遠程分支不存在,則會被新建。
如:git push origin master,表示將本地master分支推送到origin主機的master分支上。
若是省略本地分子名,則表示要刪除遠程主機中分支,如git push origin : master,則表示刪除origin主機中master分支
此命令用於獲取遠程分支中更新。
語法:git pull 遠程主機 遠程分支:本地分支如:git pull origin master:master,表示將遠程主機origin中的master分支跟新到本地分支master。
如需查看版本控制全系列文章,請點擊: http://www.cnblogs.com/jerehedu/p/4607599.html#bbkz
若有疑問諮詢或技術交流,請加入官方QQ羣: (452379712)