首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> Delphi

BCB/Delphi 專案檔案副檔名完整對照表:原始碼管理必備參考

     編輯:Delphi

Delphi 與 C++Builder 專案開發過程中會產生大量不同副檔名的檔案。釐清哪些檔案需納入版本控制(Git/SVN),哪些為編譯產物可忽略,對團隊協作與持續整合至關重要。本文整理常見副檔名用途與建議管理策略。

核心原則

  • 原始碼、專案設定、資源檔 → 必須納入版控
  • 編譯中間產物、備份檔、使用者個人設定 → 不納入版控(加入 .gitignore)
  • 第三方二進位庫 → 視授權與取得方式決定,建議放入 lib/ 目錄統一管理

依字母序分類對照表

副檔名說明版控建議
~*Delphi 自動備份檔❌ 忽略
bmp/wmf/emf/gif/jpg/png/ico/cur/ani圖片/圖示/游標資源✅ 納入(專案使用者)
bpg專案群組檔✅ 納入
bpl執行期套件(特殊 DLL)視情況:自編譯❌、IDE 外掛/無原始碼第三方✅
bpr/bpf/bpj/h/cppC++Builder 專案相關專案用到 BCB 才納入
cabActiveX 控制項封裝第三方控制項✅
cfg編譯器設定檔✅ 納入(確保跨機器編譯一致)
dciCode Insight 程式碼模板❌ 個人設定
dcp套件符號資訊(對應 dcu)❌ 可由原始碼產生
dct元件模板專案使用者✅
dcu/dpu單元編譯中間檔❌ 忽略(第三方僅提供 dcu 例外)
ddp/dtiModeling 圖表檔❌ 非必要
dfm/xfm表單定義檔(二進位/文字)✅ 納入(建議設為文字格式)
dll/so動態連結庫自編譯❌、第三方✅
dmt選單模板❌
dof/kof專案選項檔✅ 納入(跨機器一致性關鍵)
dpc/pce套件集合檔✅ 納入
dpk/dpkw套件原始碼✅ 納入
dpr專案主檔✅ 核心檔案
drc套件資源檔套件使用者✅
drl/droRepository 範本使用共享範本才納入
dskIDE 桌面版面配置❌ 個人設定
exe執行檔❌(第三方工具例外)
hlp/cnt/toc/chm線上說明檔✅ 納入
idl介面定義語言檔✅ COM/CORBA 專案納入
incInclude 檔($I 引入)✅ 納入
inf/reg註冊/安裝資訊檔✅ 納入
ini初始化設定檔設計時預設值✅、執行期產生❌
int介面定義摘要檔❌ 僅供參考
libC++ 導入庫提供給 C++ 使用者才納入
log日誌檔❌
map連結對應檔❌
mdb/dbf/...桌面資料庫檔視專案需求
obj/o目標檔$L 連結的目標檔✅、其餘❌
ocxActiveX 控制項第三方✅
pasPascal 單元原始碼✅ 核心檔案
rc資源腳本✅ 納入
res編譯後資源檔✅ 納入(含主圖示、版本資訊)
rps/dfn多國語言翻譯檔使用 ITE 國際化才納入
rsm偵錯符號❌
sql/tqlSQL 腳本/模板✅ 納入
stat專案統計資訊❌
tds外部偵錯符號❌
todo待辦事項清單❌
upg版本升級資訊❌

.gitignore 範本建議

# Delphi/C++Builder 編譯產物
*.dcu
*.dpu
*.bpl
*.dcp
*.exe
*.dll
*.so
*.map
*.tds
*.rsm
*.log
*.stat
*.~*
*.dsk
*.dci
*.identcache

# 備份檔
*.bak
*_backup.*

# 本地設定
*.local
*.user

關鍵決策速查

  • dfm 文字格式化:專案選項 → 「文字格式 DFM」啟用,利於 diff 比對
  • dof vs cfg:dof 包含 cfg 所有資訊且更完整,兩者皆建議納入
  • 第三方元件:若有原始碼納入專案編譯,不納入其 bpl/dcp;若無原始碼,需納入 bpl/dcp/dcu 並記錄版本授權

建立標準化的檔案管理規範,能讓團隊專注於業務邏輯開發,避免「我的機器能編譯、你的卻不行」等環境差異問題。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved