一、svn用戶端安裝及環境配置.
果所在的linux機器上沒有安裝svn用戶端,則首先安裝svn用戶端:
1. subversion-1.4.3.tar.bz2 subversion-deps-1.4.3.tar.bz2
2. 使用
tar xvfj subversion-1.4.3.tar.bz2
tar xvfj subversion-deps-1.4.3.tar.bz2
解壓這兩個檔案(不要亂了順序),此時在目前的目錄下會出現subversion-1.4.3檔案夾,
3. 進入subversion-1.4.3檔案夾:
# cd subversion-1.4.3
#./configure
# make #編譯,如果提示錯誤, 則可能需要root許可權
# make install #安裝,此時可能需要root使用者權限
安裝好用戶端之後, 預設安裝目錄是/usr/local/subversion.
4. 將svn命令連結到/usr/local/bin目錄下(需要root許可權):
ln –s /usr/local/subversion/bin/svn /usr/local/bin
測試是否已經可以在使用者目錄下使用svn:
svn help 如果出現命令列表,則表示已經連結成功。
5. 使用chmod命令,使 list checkout commit這三個命令指令碼有執行許可權:
chmod 777 list checkout commit
cp list checkout commit /usr/bin
svn用戶端安裝成功
二、svn命令操作
假設svn服務端上有如下庫目錄:
不顯示了。。。
Steven在他的使用者目錄中有workplace目錄,他想把DemoProject簽出到他的workplace目錄中,並進行操作:
0、 進入workplace目錄,使用checkout命令簽出:
cd workplace
checkout DemoProject
此時注意: 如果你的登陸的linux終端登陸使用者和你的svn操作使用者名稱同名(比如都是steven),則會提示你輸入svn操作使用者的密碼,否則會先提示你輸入linux終端使用者密碼,然後提示你輸入svn操作使用者名稱和密碼
進行完上面操作後, 在workplace目錄中就會出現DemoProject目錄。
1、 單個檔案的操作(hello.cpp) 進入到目錄DemoProject/src/demo
A) 更新到本地
svn up
B) 修改後提交到庫
commit hello.cpp
svn up
C) 新增一個檔案到庫(進入src/include目錄)
svn up #更新本地工作目錄
svn add hello.h #添加到庫
commit hello.h #提交hello.h到庫
svn up #更新本地工作目錄
D)刪除庫上一個檔案(進入src/demo目錄)
# svn del hello.cpp 刪除庫中的hello.cpp檔案
# commit hello.cpp 提交到庫
# svn up 更新本地工作目錄
2、 檔案夾的操作(這裡需要考慮檔案夾中還有子檔案夾的情況)(src目錄)
A) 更新指定檔案夾到本地(進入DemoProject目錄)
# svn up src //則src目錄及目錄下的所有子檔案夾更新到DemoProject目錄下
B) 提交修改過的整個檔案夾到庫(修改了檔案夾include
# svn up
# commit include
# svn up
C) 新增一個檔案夾到庫(DemoProject/lib)
進入DemoProject目錄:
# svn mkdir lib 建立lib包
# commit lib 提交到庫
# svn up 更新本地工作目錄
D)刪除庫上一個檔案夾(demo) 進入DemoProject/src/目錄
# svn up 更新本地工作目錄
# svn del demo 刪除demo檔案夾
# commit demo 將刪除提交到庫
3、 本地與庫之間的操作
A) 查看庫上目錄結構(查看DemoProject目錄結構)
# list DemoProject
B) 對比本地與庫上某個檔案或者整個檔案夾(進入src/demo目錄):
# svn diff hello.cpp
C) 查看庫上某個檔案提交記錄(什麼時間、什麼人提交過)
# svn log –v hello.cpp
4、 其他動作
A) 查看src/demo目錄下的檔案的狀態(是否修改後沒有提交等)
# svn st
如果你的 hello.cpp修改後還沒有提交,則使用svn st會在第一列顯示hello.cpp的狀態為M,表示項目已經修改但沒有提交到庫。
B) 查看svn命令的協助
# svn help update 查看update命令的協助.
C) 提交時衝突(沒有更新本地工作目錄而修改檔案導致衝突)處理:
(1) 想使用項目倉庫中的版本,而放棄本地拷貝的修改:
# svn revert hello.cpp
# svn up
(2) 想保留本地工作拷貝的修改,而放棄項目倉庫中版本的修改:
# 當你解決了衝突的檔案,就可以使用resolved
# svn resolved
# svn commit hello.cpp
D)checkout下來庫的老版本
首先查看你需要checkout下來的DemoProject老版本,然後再checkout下來:
# svn log DemoProject 查看老版本,比如是4330版本
# checkout DemoProject –r 4330
--------------------------------------------------------------------------
zlib官方網站:
http://www.zlib.net
上下載源碼來安裝zlib軟體包。
目前最新版本zlib是zlib1.2.3,安裝開始;
$wget http://www.zlib.net/zlib-1.2.3.tar.gz
$tar -xvzf zlib-1.2.3.tar.gz
$cd zlib-1.2.3.tar.gz
$./configure
$make
$sudo make install