首先推薦大家一個應該是國內外最好的SVN倉庫,不限私有,不限成員:https://svnbucket.com/
SVN官網 https://tortoisesvn.net/downloads.html 以及中文包
visual studio 使用的SVN插件
visualsvn 下載地址 https://www.visualsvn.com/visualsvn/download/
SVN排除的上傳
packages bin obj PublicDLL .vs *.user *.suo *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store [Tt]humbs.db
常用的命令
先更新 合並沖突 在提交 當然下面命令用不到 都是圖形化的
# checkout代碼 svn co svn://svnbucket.com/xxx/xxx # 更新代碼 svn up # 添加新文件到版本庫 svn add filename # 添加當前目錄下所有php文件 svn add *.php # 遞歸添加當前目錄下的所有新文件 svn add . --no-ignore --force # 提交代碼 svn commit -m "提交描述" # 查看指定文件的所有log svn log test.php # 查看指定版本號的log svn log -r 100 # 撤銷本地文件的修改(還沒提交的) svn revert test.php svn revert -r 目錄名 # 撤銷目錄下所有本地修改 svn revert --recursive 目錄名 # 查看當前工作區的所有改動 svn diff # 查看當前工作區test.php文件與最新版本的差異 svn diff test.php # 指定版本號比較差異 svn diff -r 200:201 test.php # 查看當前工作區和版本301中bin目錄的差異 svn diff -r 301 bin # 查看當前工作區的狀態 svn status # 查看svn信息 svn info # 查看文件列表,可以指定-r查看,查看指定版本號的文件列表 svn ls svn ls -r 100 # 顯示文件的每一行最后是誰修改的(出了BUG,經常用來查這段代碼是誰改的) svn blame filename.php # 查看指定版本的文件內容,不加版本號就是查看最新版本的 svn cat test.py -r 2 # 清理 svn cleanup # 若想創建了一個文件夾,並且把它加入版本控制,但忽略文件夾中的所有文件的內容 $ svn mkdir spool $ svn propset svn:ignore '*' spool $ svn ci -m 'Adding "spool" and ignoring its contents.' # 若想創建一個文件夾,但不加入版本控制,即忽略這個文件夾 $ mkdir spool $ svn propset svn:ignore 'spool' . $ svn ci -m 'Ignoring a directory called "spool".' # 切換當前項目到指定分支。服務器上更新新版本我們經常就用這個命令來把當前代碼切換到新的分支 svn switch svn://svnbucket.com/test/branches/online1.0 # 重定向倉庫地址到新地址 svn switch --relocate 原svn地址 新svn地址 # 創建分支,從主干創建一個分支保存到branches/online1.0 svn cp -m "描述內容" http://svnbucket.com/repos/trunk http://svnbucket.com/repos/branches/online1.0 # 合並主干上的最新代碼到分支上 cd branches/online1.0 svn merge http://svnbucket.com/repos/trunk # 分支合並到主干 svn merge --reintegrate http://svnbucket.com/repos/branches/online1.0 # 刪除分支 svn rm http://svnbucket.com/repos/branches/online1.0 # 查看SVN幫助 svn help # 查看指定命令的幫助信息 svn help commit