We are planning to use CICD for Salesforce development, for that we are going to use TFS.

In TFS we can create both TFVS and GIT type of repository.

What is the difference between these two with respect to Salesforce, given that we are going to use SFDX.

I'm more inclined towards GIT but need to understand what major advantages it will give.

  • I don't know anything about TFVS, but the push/pull of SFDX seems consistent with Git, so my opinion is Git fits in well with SFDX. – Keith C May 21 '20 at 11:00

Realistically, it shouldn't matter what you choose, git, TFS, SVN, etc. SFDX's "create new project" command assumes a git format as the default, so you will need to delete some folders and files (.git and .gitignore for starters), and create the TFS equivalents (e.g. a .tfignore file). Aside from the extra setup, the differences come down to things like "do your tools support TFS?" and "do you even have a TFS server?".

Some people like one technology over another, but as long as it gets the job done the way you want, it doesn't matter which you use. SFDX tools deal primarily with pushing/pulling metadata, creating packages, etc, all of which are CVS (Code Versioning System) agnostic. Salesforce even encourages you to choose whichever tools you want to use, which is why it's a CLI to begin with.

Any IDE can can use CLI tools can use SFDX, and any repository that can store files can work with the DX format. Yes, there's tooling built for VS Code and git by default, but that's to give developers a "path of least resistance" so they can just install and go in minutes. Developers are free to choose whichever CVS and IDE/Tools work for them.

Not the answer you're looking for? Browse other questions tagged or ask your own question.