ubuntu14.04使用git伺服器說明:
1.簡介:git屬於分布式版本控制器,其實每個人的電腦都是乙個完整的版本庫;比如兩個人在區域網寫乙個專案,那麼這兩個人的電腦裡面都是乙個完整的專案,當有新的**出現的時候,直接push給對方即可。當然人多的時候,又不在區域網裡面,不可能push給每乙個人,git的解決方案是用一台電腦當做集中的版本庫,大家把新**都push到上面去,要得時候在pull到自己電腦上。
你的檔案一共可以放在三個地方,一:你的本地庫,二:你的當前修改快取,三:公共伺服器的遠端庫。在使用git伺服器時,需要先在自己電腦上建立乙個本地庫,用來存放和轉殖遠端庫的內容,當然轉殖前應該先初始化一下。然後當你對你當前本地庫里的檔案進行完更改之後,它只是停留在本地快取,你需要提交命令來將更改儲存到本地庫,在這完成之後,你需要將你的修改完的新版本的庫push到遠端伺服器的庫中。這樣當別人在他的電腦上更新遠端庫後,就可以看到你修改的內容,當然還可以看到修改之前的版本。
2.實驗室伺服器說明:
實驗室git伺服器ip位址為ip
實驗室git伺服器登陸使用者選擇bupt-server-1,一般修改在這個使用者下進行。登陸密碼為teamserver。
實驗室git伺服器git使用者密碼為:*****
實驗室git伺服器的賬戶管理,包括增加管理員,新建專案,和指定使用者許可權,這些需要修改gitosis的配置檔案,然而gitosis的配置檔案也是乙個庫,我已經將它轉殖在/home/bupt-server-1/gitadmin資料夾下,資料夾下有連個檔案,乙個是keydir用來存放由許可權訪問git使用者的公鑰,另乙個是gitosis.conf,用來配置具體的倉庫使用者和許可權,和管理員配置。當然以上這些修改,都必須是管理員才有許可權來修改的。
具體的操作,參考管理gitosis的配置檔案」部分。
3.快速使用git伺服器(以下命令都是在終端)
前提確保你的電腦和git伺服器在同乙個區域網內!
sudo apt-get install git-coreopenssh-server openssh-client
安裝配置gitosis初始化一下伺服器的git使用者,這一步其實是為了安裝gitosis做準備。在任何一 臺機器上使用git,第一次必須要初始化一下:
git config –global user.name 「myname」
git config –global user.email 「myname@server「
安裝一下python的setup tool, 因為gitosis的安裝用到了python的一工具,這個也是為了gitosis做準備:
sudo apt-get install python-setuptools
獲得gitosis包:
cd /tmp
git clone
cd gitosis
sudo python setup.py install
獲取本機的公鑰
ssh-keygen -t rsa
該命令只需一直按回車鍵即可,知道命令直行結束,你的公鑰儲存在/home/你的ubuntu的機器名子/.ssh/id_rsa.pub,id_rsa.pub就是你的公鑰,但是是不可見的,你需要在終端使用cp命令將它拷貝出來,
例如:sudo cp -a /home/你的ubuntu的機器名子/.ssh/id_rsa.pub,id_rsa.pub /你自己準備放公鑰的資料夾
然後將該公鑰交給管理員,管理用將該使用者的公鑰重新命名為該人的名字(為了在專案中方便),將其拷貝到/home/bupt-server-1/gitadmin/keydir下,然後再修改gitosis.conf檔案。
cdcd /gitadmin/gitosis
git add . 注意有個點,點前有空格
git commit -am "add a user permission"
git push origin master
新增的使用者不能立即生效,這時候需要重新啟動一下sshd服務
sudo /etc/init.d/ssh restart
接下來那個新增好公鑰,並且是某專案的成員的機器,就可以轉殖該專案了
建立乙個自己的本地倉庫,就是資料夾
進入資料夾,使用命令git init初始化一下
轉殖專案
git clonegit@ip:/home/repo/han_test_prj.git
這裡的han_test_prj.git是我建立的測試倉庫,你需要轉殖你自己需要的倉庫,且你必須是有許可權的。
到此,你已經轉殖了遠端倉庫的內容到你的本地倉庫了,接下來你可以修改和使用了。
當你修改了以後將其push到遠端伺服器
git add . 你新增了修改命令
git commit -am "this is b added" 你提交的修改命令引號內需要說明的是你這次提交的說明
git push origin master 將修改push進遠端伺服器,如果這句有錯誤,在該句執行前加上git remote rm origin再試試
4.安裝linux下git伺服器可檢視形客戶端
安裝git-cola客戶端命令:sudo apt-get install git-cola
安裝gitg客戶端命令:sudo apt-get install gitg
如果安裝失敗,請更新一下軟體,命令apt-get update
5.建立倉庫,修改,以及提交推送到遠端伺服器
建立倉庫:假設建立slam.git的倉庫
目前需要在伺服器本機上,進入git使用者下,建立倉庫
su git
cd /home/git_repo
mkdir slam.git
cd slam.git
git init --bare
exit
現在,在遠端伺服器已經建立了乙個空的倉庫,但是空倉庫是不能轉殖的,所以需要在伺服器本地倉庫給它乙個初始化的版本
初始化遠端伺服器的slam.git倉庫:
mkdir slam-roi
cd slam-ori
git init
echo "/*add something*/"> readme
git add.
git commit -am "initial version"
git remote add origin git@ip:/home/git_repo/slam.git
git push origin master
到目前,在遠端伺服器上已經有乙個已經初始化後的版本,可以在其他機器上轉殖和提交了
在另一台機器上
建立乙個資料夾作為你的本地倉庫:
mkdir mygitrepo
cd mygitrepo
git init
git clone git@ip:/home/git_repo/slam.git
密碼是927git
然後你就在你的本地倉庫轉殖了遠端伺服器上的slam.git倉庫
在倉庫裡加上main.cpp檔案後
git add . main.cpp
git commit -am "說明"
git push origin master
Ubuntu14 04下搭建Boa web伺服器
ubuntu14.04搭建boa服務 www.boa.org 版本 boa 0.94.13.tar.gz 2,解壓並進入boa 0.094.13 src 3,執行 configure make 錯誤 yacc d boa grammar.y make yacc 命令未找到 make y.tab.c ...
Ubuntu 14 04下安裝GitLab服務端
一 簡介 gitlab是利用 ruby on rails 乙個開源的版本管理系統,實現乙個自託管的git專案倉庫,可通過web介面進行訪問公開的或者私人專案。它擁有與github類似的功能,能夠瀏覽源 管理缺陷和注釋。可以管理團隊對倉庫的訪問,它非常易於瀏覽提交過的版本並提供乙個檔案歷史庫。團隊成員...
Ubuntu14 04下搭建git伺服器
一 伺服器端 1.檢查是否安裝openssh server 在終端中輸入ps e grep ssh,顯示結果如果沒有sshd的話就是沒有安裝openssh server。2.安裝openssh server 終端中輸入 sudo apt get install openssh server,如果安裝...