歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 如何在Ubuntu下用SVN commit

如何在Ubuntu下用SVN commit

日期:2017/2/28 16:35:35   编辑:Linux教程

一個簡單的命令: sudo apt-get install subversion

假設你的項目工作路徑(你剛開始建立的項目工作路徑,沒有進行過任何svn操作)為:/home/zzm/myproject

#建立一個名為 myproject 的 repository
svnadmin create /home/zzm/svn-repo/myproject

#把 /home/zzm/myproject 下的內容導入到svn的版本庫中,並建立一個本項目的版本庫,版本號是 1。
svn import -m "這是大爺的項目的第一個版本,剛剛導入的" /home/zzm/myproject file:///home/zzm/svn-repo/myproject

現在我想跟你說一個概念,就是svn中的working copy,實際上我們在上面一共建立了兩個文件夾,一個是你的項目文件夾:/home/zzm/myproject,另一個是你的項目的版本庫文件夾:/home/zzm/svn-repo/myproject,這兩個文件夾都不是所謂的working copy,真正的working copy是負責直接和版本庫進行同步和記錄操作的,在working copy文件夾內,有一個隱藏的.svn文件夾。通常我都不是在working copy文件夾裡面直接操作,www.linuxidc.com而是另一個地方編輯文件等,然後把在另一個地方改動的東西直接拷貝到working copy裡面,然後執行commit命令進行版本的維護。要建立你的working copy只有使用checkout命令:

#建立一個名為 my_working_copy 的 working copy
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy
(根據你文件多少會有很多的輸出,最後會告訴你當前你checkout的版本)

#實際上你可以使用checkout命令獲得項目的任意一個版本的全部內容,執行命令:
svn checkout file:///home/zzm/svn-repo/myproject my_working_copy_version_number -r version_number
(version_number即是你所要獲得的項目版本的版本號,比如1,2或者3等)

#如果你改變了你的working copy裡面的內容,需要保存這次改變,即向版本庫中添加一個版本,使用commit命令:
svn commit -m "大爺我添加了幾張圖片,更新了項目的企劃"
(確保你終端當中的當前路徑是你的working copy的路徑,才能正確的執行本次命令)

#經過幾次commit之後,你可能有很多的版本在版本庫裡面,通過輸入下面的命令可以查看各個版本的情況:
svn log path
(path是你想要查詢的working copy的路徑,如果你在這個路徑下面輸入的命令,可以省略path)

----------------------------------
千萬注意的內容:
你在你的working copy目錄中作文件操作時,比如刪除或移動文件,不能直接用終端當中的命令 rm, mv 來進行,這樣 svn 不能追蹤到文件的變化,當你使用commit命令提交的時候,你不會得到任何的結果,想要讓svn追蹤你的變化你必須使用 svn del 或是 svn move 來完成刪除或移動的操作,比如:

# 我拷貝了一個文件到working copy中,需要讓svn知道我拷貝了一個文件:
svn add filename

# 其他的:
svn move filename /home/zzm/my_working_copy/new_folder/aa
svn rename filename1 filename2
svn del filename

差不多了,上面的東西已經足夠個人用戶使用了,樓主還有什麼問題的話可以回帖詢問。
希望上面的內容對你有所幫助!

Copyright © Linux教程網 All Rights Reserved