Team Foundation Version Control Commands

Does anyone know if the following commands are detailed or listed in any tables or config files?

Table: tbl_Version Field: Command

  • List item
  • Edit = 2
  • Type = 4
  • Add folder = 5
  • Add file = 7
  • Rename = 8
  • Rename,edit = 10
  • Delete = 16
  • Delete,rename = 24
  • Undelete = 32
  • Undelete,edit = 34
  • Branch = 68
  • Branch,delete = 84
  • Merge = 128
  • Merge, edit = 130
  • Merge,type,edit = 134
  • Merge, rename, edit = 138
  • Merge,delete = 144
  • Merge,delete,rename = 152
  • Merge,undelete = 160
  • Merge,undelete,edit = 162
  • Merge,branch = 196
  • Merge,branch,edit = 198

In case anyone else is trying to query against tbl_Version (TFS 2017 Update3), the enum bits shown by Jesse should be shifted one place in the database. I'm not sure why the ChangeType enum would be setup as Jesse describes, as it would violate .NET design guideline CA1008 and common sense by apparently setting 'None'=1 instead of 0. This makes Rick Web's values pretty close to correct. The bit flags of the 'Command' col in the DB are therefore:

(None = 0)
Add = 1,
Edit = 2,
Encoding = 4,
Rename = 8,
Delete = 16,
Undelete = 32
Branch = 64,
Merge = 128,
Lock = 256,
Rollback = 512,
SourceRename = 1024,
Property = 4096

Here's some crappy SQL to decode them as a space-separated list in your SELECT-

SELECT TOP 10 RTRIM(
    CASE WHEN Command & 1 = 1 THEN 'Add ' ELSE '' END
    + CASE WHEN Command & 2 = 2 THEN 'Edit ' ELSE '' END
    + CASE WHEN Command & 4 = 4 THEN 'Encoding ' ELSE '' END
    + CASE WHEN Command & 8 = 8 THEN 'Rename ' ELSE '' END
    + CASE WHEN Command & 16 = 16 THEN 'Delete ' ELSE '' END
    + CASE WHEN Command & 32 = 32 THEN 'Undelete ' ELSE '' END
    + CASE WHEN Command & 64 = 64 THEN 'Branch ' ELSE '' END
    + CASE WHEN Command & 128 = 128 THEN 'Merge ' ELSE '' END
    + CASE WHEN Command & 256 = 256 THEN 'Lock ' ELSE '' END
    + CASE WHEN Command & 512 = 512 THEN 'Rollback ' ELSE '' END
    + CASE WHEN Command & 1024 = 1024 THEN 'SourceRename ' ELSE '' END
    + CASE WHEN Command & 2048 = 2048 THEN 'UNKNOWN ' ELSE '' END
    + CASE WHEN Command & 4096 = 4096 THEN 'Property ' ELSE '' END
    + CASE WHEN Command & 8192 = 8192 THEN 'UNKNOWN ' ELSE '' END
    + CASE WHEN Command & 16384 = 16384 THEN 'UNKNOWN ' ELSE '' END
    ) 'Commands' 
FROM tbl_Version