tags:

views:

1286

answers:

4
+6  Q: 

Delphi file types

I am looking for a list of all file types that can be associated to a Delphi project (all versions of Delphi), more specifically all file types that should be under source control.

This site doesn't mention Delphi 2009 so I'm not sure if there may be new file types.

Is there maybe such a list directly from Codegear?


Putting all the answers together, here is a list:

Files -> Source Control

  • .bdsgroup - Project Group
  • .bdsproj - Project
  • .bpg - Project Group
  • .cfg - Project Configuration
  • .dfm - Delphi Form
  • .dof - Project Options
  • .dpk - Package
  • .dpr - Project
  • .dproj - Project
  • .pas - Pascal File
  • .res - Resource File
  • .todo - IDE Todo

I am not sure about these: Should they be included?

  • .dem
  • .dro
  • .local

Maybe there is anything still missing?

+2  A: 

Prior to Prism:

  • .pas is the source code - been that way in all versions
  • .dcu delphi compiled unit (compiled .pas file)
  • .dfm delphi form
  • .dpr Delphi project
  • .res resource file
  • .dpk delphi package
  • .dcp compiled version of dpk
  • .dpl/.bpl Windows DLL with Delphi specifics in it
  • .BPG, .BDSGROUP Borland Project group
  • .dcr compiled version of .res
  • .dof settings for solution
  • .dsk settings for IDE specific to the solution (i.e. what windows are open)
  • .dro This text file contains information about the object repository.
  • .dmt This proprietary binary file contains the shipped and user-defined menu templates information
  • .tlb Type library
  • .dem This text file contains some standard country-specific formats for a TMaskEdit component

From my limited work with Prism it seems

  • .pas is the source code - includes forms now
  • .dproj Delphi project
  • .resx resource file
  • .vsproj delphi package
Robert MacLean
Neither *.dcu, *.dcp nor *.dsk should go into the version control; the first two because they can easily be recreated, and the last one because it's only a minor inconvenience to not have it in a clean checkout, but it can be a major pain to have a wrong one (smaller resolution, only 1 monitor, ...)
mghie
Agree with mghie!
Argalatyr
I miss .dfn and other ITE extensions.
Marco van de Voort
+1  A: 

Just a couple of extra:

Ones that should not be included (at least I don't.):

.DRC - generated on every compile (list of bound resources) .MAP - map file .DPROJ.Local .IdentCache .Groupproj.local

Ones that should:

.Todo - Project todo file for IDE. .Inc - Delphi/Pascal Include files.

Others that depend on what your storing

.GroupProj - Delphi group of projects file

Aikislave
A: 

You can add practically any type of file to a D2009 project. With D2009, I have graphics files (.PNG, .BMP) for resources included as part of the project. Also text files (for readmes, etc.)

One approach you could consider is to extract the actual files that make up the project by examining the .dproj file which is an XML format. That way, you can dynamically add things to version control as and when they are added to the project.

Roddy
Thanks for the answer, Roddy, but I only mean the file types that are created by Delphi itself. I want to be sure that all file types are in source control and nothing is missing that Delphi might create at some point.
Holgerwa
A: 

Here's a guide for setting up Subversion with Delphi. He uses this file filter for subversion:

I use *.dcu .~ dcu temp *.exe *.zip *.bkm *.ddp *.cfg *.dof *.dsk *.ini *.hlp *.gid *.bmp *.png .gif ~ *.log bin debug release *.map *.chm *.bkf Thumbs.db *.mdb .obj *.elf *.stat *.ddp *.bpl *.map *.GID *.hlp *.opt *.dll *.raw *.BIN *.obj *.pdb *.scc Debug Release *.xml obj .~ *.backup *.INI *.ArmLog *.KeyLog *.NanoLog *.Stats *.PreARM *.old *.drc .~ *.doc *.pdf *.bmp *.jpg *.MRW *.NEF *.ORF *.psd *.X3F __history *.local *.identcache *.bak Thumbs.db *.ldb *.dex *.rar DllDcu *.lck CVS cvs *.txt *.TXT *.jdbg *.HLP *.KWF *.xls *.cnt *.dsm *.dti *.tmp *.lnk *.cbk *.mes Note that the patterns are case sensitive.

Dave
I don't think you're making it clear that this is the list of files to AVOID. That list is introduced as, "In the Global ignore patterns, enter in the file types that should be ignored by default. Ie things like map files that will (almost) never need to be under version control. I use..."
Argalatyr
@Wouter: I'll admit it's a useful list, but the answer is clearly wrong (as I explained in my comment), and thus upvoting makes little sense to me. Oh, well - just my $0.02
Argalatyr