SVN 目的在管理原始碼版本演進。上傳編譯產物、使用者專屬設定、暫存檔不僅膨脹倉庫體積,更會引發頻繁衝突、污染歷史記錄。團隊應建立 .svnignore (或 IDE 內建忽略清單) 並強制執行。
| 類別 | 檔案/目錄範例 | 說明 |
|---|---|---|
| VS 專案使用者檔 | *.ncb, *.suo, *.vcproj.*.user | 僅 .sln、.vcproj 需版控 |
| 編譯輸出目錄 | Debug/, Release/, *.obj, *.pdb, *.idb | 含所有中間檔與輸出二進制 |
| 本專案產出二進制 | *.exe, *.lib, *.dll | 每次建置自動產生,勿上傳 |
| Qt 專案產出 | GeneratedFiles/, Makefile*, *.pro.user | qmake/moc/uic 產生檔 |
| 大型二進位資產 | *.avi, *.mp4, *.psd (超過團隊門檻) | 建議走 FTP/NAS/雲端儲存,倉庫只存路徑引用 |
*.h, *.cpp, *.c、第三方庫標頭檔.sln, .vcproj (VS);.pro, .pri, .qrc (Qt)res/, .rc;Qt Resources/, *.ui, *.ico, 圖片素材.lib/.dll (自產庫除外)CMakeLists.txt, .gitlab-ci.yml, Dockerfile 等.svnignore (或 .gitignore 通用),提交倉庫共享svn cleanup、svn status --no-ignore 掃描殘留垃圾好習慣從第一次 svn add 開始。乾淨的倉庫是團隊高效協作的基石。