~*
Delphi產生的備份檔案,在版本控制庫及發布代碼中不應該出現這些檔案,如果修改了某個檔案卻因某些原因沒有儲存的話,可以嘗試使用這些檔案恢複。
bmp/wmf/emf/gif/jpg/pcx/png/tiff/ico/cur/ani
圖形/表徵圖/游標檔案,這些檔案如果使用到了也需要進原始碼庫。
bpg
工程組檔案(Borland Project Group File),文字格式設定,需要進原始碼庫;bpg檔案其實是makefile格式,要編譯bpg檔案可以使用make工具,文法如下:
make -f %FileName%
bpl
運行時刻包檔案,是一種Borland定義的特殊格式的dll,簡單的說與普通dll的差別就是bpl有一些共用的部分只使用了同一引用,而dll使用了多份拷貝,因此才會使得bpl與dll的某些方面的差別很大。
此類型檔案是否進原始碼庫需要根據其用途來判斷,一般情況下原始碼編譯出來的bpl無需進庫,但是如果此bpl是IDE的擴充外掛程式,可能也需要進庫,此外如果第三方組件沒有提供源碼僅提供了此檔案,則此檔案也需要進原始碼庫。
bpr/bpf/bpj/h/cpp
BCB(Borland C++ Builder)相關檔案,如果工程使用了BCB,則需要進原始碼庫,但在我們的工程中應該不需要這些檔案。
cab
ActiveX控制項包檔案,如果是工程使用到的第三方控制項,則需要進原始碼庫。
cfg
編譯工程時的設定檔。dcc32.exe程式編譯工程時使用cfg檔案的順序為:首先使用dcc32.exe同目錄下的dcc32.cfg檔案,然後使用待編譯檔案同目錄下的dcc32.cfg檔案,最後使用待編譯檔案同目錄下的同名的cfg檔案,為了保證在不同的機器環境下編譯的結果的同一性,此檔案需要進原始碼庫。
dci
Code Insight檔案,儲存了代碼模板(Code template),一般情況下無需進原始碼庫。
dcp
包含了包(Package)的頭資訊和包中單元檔案的dcu/dpu檔案的二進位映像檔案,dcp與bpl的差別可以用dcu與dll/exe的差別來理解,delphi編譯使用到包的檔案時需要此包的dcp檔案,此檔案可由原始碼產生,一般無需進原始碼庫。
dct
Component Template檔案,如果工程使用到了component template則需要進原始碼庫。
dcu/dpu
單元(unit)對應的二進位映像檔案,dpu是Linux系統下的dcu格式。dcu/dpu是pas的二進位的中間格式,相應的dfm/xfm檔案沒有連結進dcu/dpu中。一般情況下無需進原始碼庫,除非是在第三方庫以dcu形式提供時。
ddp/dti
Diagram 檔案。Delphi 7提供了Diagram功能,可以在單元檔案中使用圖形化的描述,此類型檔案對編譯原始碼無影響,但是如果使用了diagram功能,則此檔案對理解單元可能會比較有用,在我們的工程中應該無需將這些檔案進原始碼庫,即使有這些檔案也可能是因為切換到diagram頁卡產生的。
dfm/xfm
表單檔案。xfm是交叉平台原始碼使用的表單檔案。dfm/xfm有兩種格式,一種是二進位格式,一種是文字格式設定,為了便於版本控制,需要使用文字格式設定,文字格式設定也存在多種格式,Delphi7的文字格式設定的dfm/xfm儲存如中文等使用的是unicode編碼值,而Delphi7之前的使用的直接就是 ansi,Delphi7支援開啟原有格式的dfm檔案。需要進原始碼庫。
dll/so
動態連結程式庫檔案。so為Linux下的動態連結程式庫檔案。如果是編譯出來的dll/so檔案,無須進原始碼庫,如果是工程使用到的第三方庫則需要進原始碼庫。
dmt
Menu Template檔案,一般無需進原始碼庫。
dof/kof
Delphi 編譯工程時的選項檔案(Project options file),kof是Linux平台下的dof檔案。此檔案包含了Delphi的Project->Options的資訊,也包含了編譯配置的資訊,此外還包含了目錄,連結,版本,條件開關等等。一般情況下dof是同名cfg檔案的超集(dof與cfg的格式不一樣)。文字格式設定,為了保證在不同的機器環境下編譯的結果的同一性,此檔案需要進原始碼庫。
// 本文轉自 C++Builder研究 - http://www.ccrun.com/article.asp?i=1025&d=dwni64
dpc/pce
包集合檔案和包集合編輯檔案。Delphi支援將多個包(Package)併入到一個檔案中,使用此格式檔案可以便於分發多個包給其他開發人員,使用此格式可以很簡便的配置IDE環境。此檔案需要進原始碼庫。
dpk/dpkw
包檔案。dpkw是交叉平台下的dpk檔案。包檔案列出了包所包含的檔案和包所依賴的包,以及包描述資訊,包編譯選項等。文字格式設定,需要進原始碼庫。
dpr
工程檔案。文字格式設定,需要進原始碼庫。
drc
包資源檔,提供如元件圖表標等包所需的資源。二進位格式,如果是包使用到的dcr則需要進原始碼庫。
drl/dro
Repository 檔案。Delphi提供了repository功能,可以使開發人員共用開發模板,合理使用repository功能可以加快開發速度,開發組配置好共用的repository就可以使用repository了。如未使用到repository功能則無需進原始碼庫。
dsk
Desktop檔案。儲存了IDE的布局(也可能包含瀏覽記號,視乎IDE的設定),為防止開發人員的IDE布局設定。文字格式設定,此檔案不應進原始碼庫。
exe
可執行檔。如非第三方組件,無需進原始碼庫。
hlp/cnt/toc/chm
協助檔案。需進原始碼庫。
idl
介面定義語言檔案。IDL定義了介面,COM和CORBA開發經常會使用到IDL。文字格式設定,需進原始碼庫。
inc
Include 檔案。與C++的include不一樣。可嵌入Delphi的原始碼檔案中,Delphi編譯是遇$I到include檔案時相當於Copy一份inc檔案的內容到當前位置,一般用於提取一些重複的每個單元都需要定義的內容,或用於定義通用的編譯器指示字條件,甚至可以使用Delphi的inc機制實現 C++的範型(可惜不能支援操作符重載)。文字格式設定,需進原始碼庫。
inf/reg
註冊檔案。文字格式設定,需進原始碼庫。
ini
初始化設定檔。如果是做為初始設定的設定檔,則需要進原始碼庫,如果是運行期產生的設定檔,則無需進原始碼庫。
int
單元的介面部分定義檔案。將Delphi的單元的Interface部分提取出來的檔案,此類檔案類似C++的標頭檔,但是僅供開發人員參考單元介面部分定義,不參與編譯。文字格式設定,無需進原始碼庫。
lib
匯入庫檔案。供C++使用的dll的匯入庫檔案,Delphi無需lib檔案。如果需要給C++開發人員使用某些dll,則需要提供相應的lib檔案。可進原始碼庫。
log
記錄檔。文字格式設定,無需進原始碼庫。
map
可執行檔布局檔案。文字格式設定,無須進原始碼庫。
mdb/dbf/gd*/db/mdx/dbt/ndx/mb/val/qbe/px/x*/y*
案頭資料庫檔案。依據工程決定是否需要進原始碼庫。
obj/o
目標檔案。二進位格式,如為原始碼$L連結的目標檔案,需要進原始碼庫。
ocx
Activex控制項檔案。二進位格式,如為原始碼使用到的第三方控制項,則需要進原始碼庫。
pas
單元檔案。文字格式設定,需要進原始碼庫。
rc
資源指令檔。經使用brcc32.exe編譯後成為res檔案。文字格式設定,需要進原始碼庫。
res
資源檔。包含了程式的主表徵圖,字串表,表徵圖,圖形等等。二進位格式,需要進原始碼庫。
rps/dfn
多國語言翻譯檔案。DelphiI的DE提供了一種多國語言支援機制。dfn為二進位格式,如果工程採用Delphi提供的此機制國際化,則需要將這些檔案進原始碼庫。
rsm
偵錯符號資訊檔。一些額外的調試工具需要偵錯符號資訊,如果要支援這些工具,則需要提供rsm檔案。二進位格式,無需進原始碼庫。
sql/tql
SQL語句和SQL模板檔案。二進位格式,需進原始碼庫。
stat
工程統計資訊檔。文字格式設定,無需進原始碼庫。
tds
外部偵錯符號表檔案。無需進原始碼庫。
todo
Todo列表檔案。無需進原始碼庫。
upg
升級資訊檔。無需進原始碼庫。