A. svn命令行比可視化工具快多少
首先這個文件夾必須是受SVN控制的,也就是說這個文件夾是必須從伺服器端checkout出來的; 然後寫一個批處理,裡面核心就兩行,第一行是svn add * ,把所有新增的文件加上add標記,第二行是svn commit 把所有新增和修改過的文件提交到伺服器端
B. svn 命令行怎麼解決沖突
解決版本沖突的命令。在沖突解決之後,需要使用svn resolved來告訴subversion沖突解決,這樣才能提交更新。沖突發生時,subversion會在Work Copy中保存所有的目標文件版本(上次更新版本、當前獲取的版本,即別人提交的版本、自己更新的版本、目標文件。假設文件名是sandwich.txt,對應的文件名分別是:sandwich.txt.r1、
sandwich.txt.r2、sandwich.txt.mine、sandwich.txt)。同時在目標文件中標記來自不同用戶的更改。
解決沖突的辦法:
- 手動解決:沖突發生時,通過和其他用戶溝通之後,手動更新目標文件。然後執行svn resolved filename來解除沖突,最後提交。
- 放棄自己的更新,使用別人的更新。使用最新獲取的版本覆蓋目標文件,執行svn resolved filename並提交。
- 放棄自己的更新,使用svn revert,然後提交。在這種方式下不需要使用svn resolved。
對於svn resolved命令需要非常小心,必須是非常確定沖突已經解決才能使用。否則,會導致Subversion以為沖突解決,而使代碼庫不正確。 解決沖突詳細文檔:
http://svnbook.subversion.org.cn/1.2/svn.tour.cycle.html#svn.tour.cycle.resolve 解決沖突(合並別人的修改)
我們可以使用svn status -u來預測沖突,當你運行svn update一些有趣的事情發生了:
$ svn update U INSTALL G README C bar.c
Updated to revision 46.
U和G沒必要關心,文件干凈的接受了版本庫的變化,文件標示為U表明本地沒有修改,文件已經根據版本庫更新。G標示合並,標示本地已經修改過,與版本庫沒有重迭的地方,已經合並。
但是C表示沖突,說明伺服器上的改動同你的改動沖突了,你需要自己手工去解決。 當沖突發生了,有三件事可以幫助你注意到這種情況和解決問題: ● Subversion列印C標記,並且標記這個文件已沖突。
● 如果Subversion認為這個文件是可合並的,它會置入沖突標記—特殊的橫線分開沖突的「兩面」—在文件里可視化的描述重疊的部分(Subversion使用svn:mime-type屬性來決定一個文件是否可以使用上下文的,以行為基礎合並,更多信息可以看「svn:mime-type」一節)。
● 對於每一個沖突的文件,Subversion放置三個額外的未版本化文件到你的工作拷貝:
● filename.mine
● 你更新前的文件,沒有沖突標志,只是你最新更改的內容。(如果Subversion認為這個文件不可以合並,.mine文件不會創建,因為它和工作文件相同。) ● filename.rOLDREV
C. SVN命令行怎麼用
SVN Commit
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:%f /notempfile /closeonend
SVN CommitAll
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:commit /path:* /notempfile /closeonend
SVN Diff
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:diff /path:%f /notempfile /closeonend
SVN Log
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:log /path:%f /notempfile /closeonend
SVN Update
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:%f /notempfile /closeonend
SVN UpdateAll
"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe" /command:update /path:* /notempfile /closeonend
Source Monitor
D:\SourceMonitor\SourceMonitor /DC++ %f
D. mac使用svn命令行必須要下載xcode么
我也在等,現在寫一行代碼就提示安裝xcode 我一個php又不用xcode 真的是煩
E. 如何在命令行通過SVN命令篩選出修改過的文件並遞交
思路:
1,查看所有文件的狀態
2,通過文件狀態篩選出狀態為「M」(修改)的文件
3,遞交
解決辦法:
1,輸入命令:$svn st
查看所有文件的狀態,比如:
guigngdemini:proj.ios guigang$ svn st
M channels/91/src/AppController.mm
M channels/91/src/dota_91.plist
M channels/i4/src/AppController.mm
M channels/itools/src/AppController.mm
M channels/itools/src/dota_itools.plist
M channels/ky/src/AppController.mm
M channels/pp/src/AppController.mm
M channels/tb/src/AppController.mm
M channels/xy/src/AppController.mm
M dota.xcodeproj/project.pbxproj
? dota.xcodeproj/xcshareddata/xcdebugger
可以看出我的環境下的輸出結果
2,輸入命令:$svn st | grep "M" | cut -c 8->modified.txt
以上命令將會把狀態為M的文件篩選出來存入modified.txt文件,可以打開此文件查看是不是正確的。
3,只將modified.txt中記錄的文件遞交到SVN伺服器
輸入命令:svn ci -m "add buyGoods fun to every channel" --targets modified.txt
比如:
guigngdemini:proj.ios guigang$ svn ci -m "add buyGoods fun to every channel" --targets modified.txt
Sending channels/91/src/AppController.mm
Sending channels/91/src/dota_91.plist
Sending channels/i4/src/AppController.mm
Sending channels/itools/src/AppController.mm
Sending channels/itools/src/dota_itools.plist
Sending channels/ky/src/AppController.mm
Sending channels/pp/src/AppController.mm
Sending channels/tb/src/AppController.mm
Sending channels/xy/src/AppController.mm
Sending dota.xcodeproj/project.pbxproj
Transmitting file data ..........
Committed revision 9413.
F. svn在win7環境下怎麼進行命令行操作
裝個SVN命令行客戶端就行了。
G. windowns怎麼命令行安裝svn
1.windows下的命令行svn客戶端
http://somebody-hjh.iteye.com/blog/1415992
我們知道,在linux下面的svn客戶端採用命令的方式管理與伺服器端svn交互。有些朋友想在windows下也具有相同的功能,而不是TortoiseSVN的GUI管理方式。這樣可以使用我們熟悉的svn命令。
在不用安裝TortoiseSVN客戶端的情況,大家可以再http://subversion.apache.org/packages.html#windows 找到windows下的svn客戶端工具。選擇Win32Svn 進行安裝。
安裝好後,bin目錄下就是相應程序了。通過添加環境變數的方式,把bin目錄添加到path。啟動cmd,敲入 svn help 以確認是否安裝成功。
好了,可以找到你的代碼,做checkout了。在commit代碼的過程中,經常會出現的一個問題是:svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR is set, and no 'editor-cmd' run-time configuration option was found
這表示你的系統,沒有指定svn客戶端通過什麼樣的文本編輯器來寫提交的注釋。我們添加環境變數,SVN_EDITOR的值為notepad。再次svn ci 代碼。notepad彈出了,寫完注釋保存。代碼提交!
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2.使用SVN命令行工具,svn下載,windows命令行下svn
http://hi..com/cpuramdisk/item/6e8e0fc29f7dbe2f46d5c038
從http://subversion.tigris.org獲取subversion for windows的版本,安裝之後就有了svn.exe這個基於命令行的客戶端工具。當然伺服器端的程序也有了,這里就不關心如何配置SVN服務了。安裝程序把svn.exe的路徑加入了path環境變數,我們已經可以在命令行中直接輸入svn就可以使用了。
如果你不知道命令怎麼用svn命令,可通過如下方式查詢:
svn help
知道了子命令,但是不知道子命令的用法,還可以查詢:
svn help ci
開發人員常用命令
導入項目
svn import http://svn.chinasvn.com:82/pthread --message "Start project"
導出項目
svn checkout http://svn.chinasvn.com:82/pthread
採用 export 的方式來導出一份「干凈」的項目
svn export http://svn.chinasvn.com:82/pthread pthread
為失敗的事務清場
svn cleanup
在本地進行代碼修改,檢查修改狀態
svn status -v
svn diff
更新(update)伺服器數據到本地
svn update directory
svn update file
增加(add)本地數據到伺服器
svn add file.c
svn add dir
對文件進行改名和刪除
svn mv b.c bb.c
svn rm d.c
提交(commit)本地文檔到伺服器
svn commit
svn ci
svn ci -m "commit"
查看日誌
svn log directory
svn log file
相關的一些東西:
1、在本地文件中,每個目錄下都有一個.svn文件夾(屬性為隱藏),保存了相關的信息。
2、注冊環境變數SVN_EDITOR為"E:\Program Files\Vim\vim71\gvim.exe",結果在svn ci的時候,出現錯誤:
'E:\Program' 不是內部或外部命令,也不是可運行的程序
或批處理文件。
svn: 提交失敗(細節如下):
svn: system('E:\Program Files\Vim\vim71\gvim.exe svn-commit.tmp') 返回 1
把SVN_EDITOR改為"gvim.exe",並且在path中添加路徑"E:\Program Files\Vim\vim71",這樣就可以在提交的時候用vim編寫注釋了。
附:
提供免費SVN服務的網站:
http://www.svnhost.cn/(推薦)
http://www.chinasvn.com
http://www.javaforge.com
http://unfuddle.com
http://svn.coollittlethings.com/index.php(針對開源免費,針對私人項目收費)
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3.http://space.itpub.net/14466241/viewspace-713138
Windows下SVN命令行工具使用詳解(附加TortoiseSVN)
上一篇 / 下一篇 2011-12-12 09:32:22 / 置頂(3) / 個人分類:網路文摘
查看( 4610 ) / 評論( 1 ) / 評分( 5 / 0 )
根據我的記憶,似乎Windows 7下自自帶一個svn命令行工具。如果你的機器沒有,不必擔心。你可以從http://subversion.tigris.org獲 取subversion for windows的版本,安裝之後就有了svn.exe這個基於命令行的客戶端工具。安裝程序把svn.exe的路徑加入了path環境變數,我們已經可以在命令行中直接輸入svn就可以使用了。
如今,好用的開源工程遍布世界各地。許多這樣的工具都提供了相應的工程源碼的SNV下載地址,所以,這個工具你幾乎是非了解不可的。以下列出svn使用使用的典型舉例。
一、關於命令行工具SVN
如果你不知道命令怎麼用svn命令,可通過如下方式查詢:
svn help
知道了子命令,但是不知道子命令的用法,還可以查詢:
svn help ci
常用命令格式與舉例
導入項目
svn import http://svn.chinasvn.com:82/pthread --message "Start project"
導出項目
svn checkout http://svn.chinasvn.com:82/pthread
採用 export 的方式來導出一份「干凈」的項目
svn export http://svn.chinasvn.com:82/pthread pthread
為失敗的事務清場
svn cleanup
在本地進行代碼修改,檢查修改狀態
svn status -v
svn diff
更新(update)伺服器數據到本地
svn update directory
svn update file
增加(add)本地數據到伺服器
svn add file.c
svn add dir
對文件進行改名和刪除
svn mv b.c bb.c
svn rm d.c
提交(commit)本地文檔到伺服器
svn commit
svn ci
svn ci -m "commit"
查看日誌
svn log directory
svn log file
二、關於可視化SVN工具TortoiseSVN
到http://tortoisesvn.net/downloads.html處下載可視化SVN工具TortoiseSVN。這個工具非常好用,是一個WINDOWS下可視化工具,特別是支持斷點續傳。
因此,如果下載小型的SVN內容,使用上面的WINDOWS自帶的命令行工具SVN.EXE足夠了。但是,當下載大傢伙時,常常下載到中間便失去與伺服器的聯系。如果再重新下載,非常可憐,而且往往還是不行。我在下載LIBGDX這個游戲引擎的源碼工具時便是遇到這樣的情況。因此才搜索到這個工具。
下載安裝後,這個工具是以WINDOWS資源管理器插件的形式存在的,非常人性化。你只要右鍵點擊一個你想存儲下載內容的文件夾,選擇「SVN Checkout...」選擇,然後彈出一個對話框。此後,你輸入你的SVN資源地址,便OK了。而且,這個工具下載速度非常快......
備註:在這個頁面http://bbs.mountblade.com.cn/viewthread.php?tid=168300
有幾個截圖,參考一下吧。
H. 在windows系統下在命令行窗口打開svn
我看了,系統PATH裡面也有d:\program files\tortoiseSVN/bin 。然後想打開tortoisesvn的圖形界面。發現出現下面文字:
tortoisesvn is a shell extension
that means it is integrated into the windows explorer.
to use tortoisesvn please open the explorer and right-click on any folder you like to bring up the context menu where you will find all tortoisesvn commands.
開始-運行,出來後輸入cmd回車。或者按鍵盤上的windows+r(windows就是那個窗口一樣的按鍵,alt旁邊那個)
I. 如何用命令行實現TortoiseSVN命令
tortoisesvn不是這么用的,它沒有單獨的軟體界面,和windows操作系統集成了,你隨便打開一個文件夾,然後點右鍵,右鍵菜單上有tortoisesvn,是從這里進去操作的
另外tortoisesvn也提供命令行方式,使用的可執行程序是tortoiseproc.exe
,關於命令行模式的參數詳細請看幫助文件