這是歷史版本頁面 — 看 TortoiseSVN (32-bit) 最新版本
TortoiseSVN:Windows 上右鍵就能做的 SVN 版本控制
你正在改一個寫了好幾個月的專案,改了三天,突然發現某個功能壞了,而且你完全想不起來是哪一行改壞的。你翻遍資料夾,只看到一堆「final」、「final2」、「真的最後版」的副本,每個都長得差不多,根本不知道哪個才是對的。你只是想找回昨天還能跑的版本,卻得花半小時比對檔案,最後放棄,從頭再寫一次。
其實你需要的不是更小心,而是把每次改動都記錄下來。很多人會用「複製一份資料夾改名」來當備份,但這招在檔案一多、改動一頻繁時馬上失效,你永遠不知道哪一份是最新的,也不知道哪一份改了什麼。版本控制軟體就是為了解決這件事而存在:它幫你記錄每一次變更、讓你隨時回到任何一個舊版本,也讓團隊知道誰改了什麼。
01TortoiseSVN 到底能做什麼?
它是一套 Windows 用的 SVN 版本控制客戶端,安裝後會整合進檔案總管的右鍵選單。你對檔案或資料夾按右鍵,就能直接提交變更、更新到最新版、建立分支或合併版本。它會記錄每次修改的歷史,讓你可以隨時查看某一行是誰在什麼時候改的,也可以把整個專案還原到某個舊版本。
02我怎麼把改好的檔案送出儲存?
在專案資料夾按右鍵,選「SVN Commit」,它會列出所有變更過的檔案,你勾選要提交的項目、寫一段說明文字,就能把變更送到伺服器。提交前它會自動檢查哪些檔案是新加的、哪些是刪除的,你可以在對話框裡確認後再送出,避免不小心漏掉檔案。
03它怎麼幫我找回舊版本?
在檔案或資料夾上按右鍵,選「TortoiseSVN → Show Log」,會看到完整的提交歷史,每一筆都標了時間和說明。選中任何一筆,按右鍵選「Revert to this revision」,工作副本就會還原成那個時間點的狀態。如果你只想看某一行是誰改的,可以用「Blame」功能,它會逐行標出作者和修訂版本。
04團隊協作時,兩個人改到同一個檔案怎麼辦?
當你更新檔案時,如果別人也改了同一處,會發生衝突。TortoiseSVN 會跳出衝突解決視窗,把兩邊的版本並排顯示,你可以選擇保留哪一邊、或手動合併兩邊的內容。它也會用顏色標出差異,讓你看清楚哪些行是對方改的、哪些是你改的,再決定怎麼處理。
05分支和合併是什麼?我什麼時候會用到?
分支是從主線複製出一條獨立的開發線,適合拿來做新功能或實驗性修改,不會影響主線的穩定版本。做完後再把分支合併回主線。在 TortoiseSVN 裡,按右鍵選「Branch/Tag」就能建立分支,合併時選「Merge」,它會幫你比對兩邊的差異並套用變更。如果你一個人開發、沒有同時維護多個版本的需求,分支功能可能用不太到。
06這套軟體適合一個人寫程式用嗎?
適合。就算沒有團隊,版本控制對個人開發也很有用。你可以隨時回溯到舊版本、比較不同時期的程式碼差異、確認某個功能是哪次提交加進來的。它不需要伺服器也能用,你可以把 repository 建在本機資料夾,用 file:// 協定存取,一個人照樣能享受版本控制的好處。
07它適合完全沒用過版本控制的新手嗎?
它的操作都藏在右鍵選單裡,對沒接觸過版本控制的人來說,選單項目很多,一開始會不知道哪些功能該用。但基本流程只有三個動作:Update(更新)、Commit(提交)、Show Log(看歷史),先把這三個用熟就能應付大部分需求。它的介面是英文的,對不習慣英文介面的人會多一層門檻。
08我聽說 Git 比較流行,這套跟 Git 有什麼不同?
SVN 是集中式版本控制,所有歷史紀錄都存在伺服器上,你必須連上伺服器才能提交和查看歷史。Git 是分散式,每個人電腦上都有完整的歷史,離線也能提交。如果你的專案已經用 SVN 伺服器、或團隊習慣集中管理,TortoiseSVN 可以直接對接;如果你要自己開新專案,Git 生態系(如 GitHub Desktop)可能更符合現在的主流做法。
09我只有 Windows 電腦,它能用嗎?
可以,它只支援 Windows,官方說明列出的系統需求是 Windows 7 到 Windows 11。不過要注意,新版的功能說明中提到系統需求已改為 Windows 10 或更新版本,如果你還在用 Windows 7 或 8,安裝新版可能會遇到問題,需要自行確認哪個版本支援你的系統。
10它是不是免費的?有沒有什麼隱藏限制?
它是開放原始碼軟體,可以免費使用,沒有試用期或付費解鎖的機制。但它的授權型式是 Open Source,表示你可以自由使用、修改、散布,但如果你要把它整合進自己的商業產品,需要遵守開放原始碼授權的規定。這部分建議你查一下它使用的具體授權條款。
11我介面看不懂英文,有中文介面嗎?
官方資料顯示介面語系是 English,沒有提到內建中文。不過 TortoiseSVN 這類工具通常有社群翻譯的語言包,你可以到官方網站或社群論壇找找看有沒有正體中文語言包可以下載安裝。如果找不到,就只能靠英文介面操作,或考慮其他有中文介面的版本控制工具。
12我該不該改用這套?還是直接學 Git 比較好?
如果你的團隊或公司已經用 SVN 伺服器,那 TortoiseSVN 是現成的選擇,直接裝來用就能銜接。如果你是自己一個人開發、沒有既有的 SVN 基礎,Git 生態系(如 GitHub Desktop)的使用者多、教學資源豐富,遇到問題比較容易找到解答。另外,TortoiseSVN 的評分人數只有 53 人,相較之下 GitHub Desktop 有 82 人評分,使用者的回饋樣本較少,這點也可以納入考量。
下載與官方連結
前往官方網站 下載 TortoiseSVN (32-bit)
TortoiseSVN-1.8.0.24401-win32-svn-1.8.0.msi · 14.76 MB · 連結指向軟體原廠
版本紀錄
- 2026-11-02 TortoiseSVN 1.15.0 (64-bit) 31.96 MB
- 2026-03-01 TortoiseSVN 1.14.9 (64-bit) 29.82 MB
- 2024-12-10 TortoiseSVN 1.14.9 (32-bit) 17.36 MB
再看 5 筆
- 2024-10-09 TortoiseSVN 1.14.8 (32-bit) 17.33 MB
- 2024-10-09 TortoiseSVN 1.14.8 (64-bit) 29.68 MB
- 2024-04-17 TortoiseSVN 1.14.7 (32-bit) 17.3 MB
- 2024-04-17 TortoiseSVN 1.14.7 (64-bit) 29.69 MB
- 2023-12-29 TortoiseSVN 1.14.6 (32-bit) 17.29 MB
這一版改了什麼
What's new in this version:
Coloring for TortoiseBlame:
- Instead of just coloring the changes by age/revision, TortoiseBlame can now color the lines by author so it's easier to spot who changed which lines.
Commit only parts of a file:
- When working on a task, it often happens that you find an issue with the surrounding code. Fixing that issue leads then to multiple tasks done in the same file, and therefore also to have multiple fixes/tasks done in one single commit.
To commit only the parts of the file that relate to one specific issue:
- in the commit dialog, right-click on file, choose "restore after commit"
- edit the file in e.g. TortoiseMerge: undo the changes that you don't want to commit yet
- save the file
- commit the file
- After the commit is done, the original file is restored, containing all the changes you didn't commit yet.
TortoiseMerge:
- TortoiseMerge, the visual diff/merge tool that comes with TortoiseSVN has also a lot of improvements.
- Ribbon UI
- TortoiseMerge uses now a Ribbon instead of a plain toolbar for its commands.
- Searching
- new shortcuts to search (Ctrl+F3), better indication of search matches, only search the active view.
- go to line
- a new command to go to a specific line number.
- inline diffs
- inline diffs can be toggled on/off with a single button instead of going through the settings dialog
- handling of UTF-32 files
- TortoiseMerge can now handle files in UTF-32 encoding as well, and recognizes more EOL formats.
Repository Browser:
- An often requested feature for the Repository Browser was to list all the repositories that are offered via the SVNListParentPath directive. This is now possible: point the repository browser to the root url and it lists all the repositories.
- At the bottom of the Repository Browser dialog a summary is shown, indicating the number of files and folders and the currently shown folder.
- There are also two new buttons to go back and forward, like in web browsers.
Third party libraries:
- When there are third party libraries stored in the working copy directly, i.e., not via the svn:externals property, then updating those is not quite easy.
- Just copying over the new version will work of course, but if the new version has files removed, those files will still be in your working copy.
- In version 1.8 TortoiseSVN offers an easier way to do this: just right-drag the folder with the new version of the library to the version stored in your working copy, then select SVN vendor branch here from the context menu.
- TortoiseSVN then scans both directories, copies all new files, removes files that are not present anymore in the new version.
- After TortoiseSVN updated the folder, all you have to do is commit the new version.
Progress dialog:
- The dialog that shows the progress of various operations now has a better indication of sections/grouping, for example when updating a working copy that has multiple externals set.
- Each section/group is indicated by the first line shown in bold.
- And as for updating externals: only those externals that pull down modifications are shown in the dialog. If an external hasn't changed then the dialog does not show any information for it. This reduces the no-information lines a lot, especially if you have a lot of externals set.
SubWCRev:
SubWCRev also got a lot of improvements, the major ones are:
- Files in UTF-16 encoding can be used as well, either as sources/templates or as target files as well.
- A new option to specify an offset for the working copy revision. This is required in case your repository is at revisions > 65535 and you want to use the revision for the version resource: the Windows version resource numbers are only 16-bit, and in this situation you can specify a negative offset so the version resource number is below that 16-bit limit.
- SubWCRev can detect unversioned files and/or folders. This is useful in case you want an error returned in your build in case you have such unversioned items in your working copy, indicating that you may have missed to add and commit those items.
Custom properties:
- If you're using custom properties, you can now configure TortoiseSVN to provide better dialogs to edit and modify them.
- The properties tsvn:userfileproperties and tsvn:userdirproperties got extended so you can specify what kind of property you have.
Client hook scripts configurable via properties:
- In earlier versions you could only configure client-side hook scripts via the settings dialog. This worked ok if you only had a few workstations/users to configure. But if you wanted a big team of committers to all run the hook scripts you needed, this required a lot of work to set up.
- In TortoiseSVN 1.8 you can now configure the hook scripts to run via project properties.
- To avoid running potentially insecure scripts without the user knowing it, TortoiseSVN will ask to run those scripts first.
Log Dialog enhancements to help with code reviews:
- A new context menu 'Create code collaborator review' has been added to provide interoperability with the SmartBear Code Collaborator review tool.
- Two new context menus and commands have been added to the log dialog when multiple files are selected in the bottom 'files changed' listbox.
- Show multiple changes...
- Open multiple local...
- The details of how these commands work, which include special support for loading working copy files into Visual Studio can be found in the subversion help file under the topic 'Invoking the Revision Log Dialog'.