##Files to check in
One of the first questions that come up when working with source control and CCS is which CCS project files need to be checked in to source control.
###CCSv5 and greater
The following project files should be checked into source control:
- .ccsproject
- .cproject
- .project
- .settings folder
- makefile.defs (if using SYS/BIOS)
.ccsproject has project information specific to CCS.
.cproject and .project are Eclipse CDT project files.
.settings folder is a standard Eclipse folder that has settings that apply for the project.
makefiles.defs has additional make rules included by the generated project makefile for SYS/BIOS projects.
For projects that use TI-RTOS or SysConfig, the RTSC configuration file (.cfg) or SysConfig configuration file (.syscfg) should be checked in along with other source files.
The following files and folders should not be checked into source control:
- \Debug or \Release \ folder
- .xdchelp
- \.config folder
- \.launches folder
Configuration folders like \Debug or \Release are generated folders that contain build artifacts like object files and do not need to be checked into source control.
.xdchelp is a generated file that is used to help display error messages in the problems view and does not need to be checked into source control.
.config and .launches are generated folders that do not need to be checked into source control.
For target configuration files or targetConfigs folder: If the project is configured to "Manage the project's target-configuration automatically" and the default settings in the generated ccxml file are not changed, then it is optional to check it into source control (as it will get auto-regenerated if missing). But if the ccxml file is being managed manually, or modifications were made to the default settings in the auto-generated one, then it is advisable to check it into source control.
###CCSv4
See [this FAQ](https://processors.wiki.ti.com/index.php/FAQ_-_CCSv4#Q:_Which_project_files_do_I_need_to_check_into_source_control.3F)
##Source Control Integration
CCSv5 and greater has native support for **CVS** and **Git** so you can browse repositories, check in/out files, get history, etc. all from within the GUI.
###CVS
To use CVS with CCSv7, you must first install support for it via the CCS App Center. Go to menu **View->CCS App Center**. From there, type in CVS in the search box, select Install and follow the instructions. You will have to restart CCS.
![](./images/cvs_in_app_center.png)
You can open and explore the CVS repository from CCS menu *Window->Open Perspective->Other*, enable Show All, and select CVS Repository Exploring.
![](./images/perspective_other.png)
![](./images/perspective_show_all.png)
More information on working with CVS can be found in the CCS Online Help.
###Git
CCSv7 comes with built-in EGit (GIT integration for Eclipse) so nothing else needs to be installed. More information on using Git with CCS can be found in the document [Using Git with CCS](sdto_ccs_git-with-ccs.html) and in the CCS Online Help.
##Installing other Plug-ins
Plug-ins are available from the [Eclipse Marketplace](https://marketplace.eclipse.org/) for some other source control providers such as **ClearCase**, **SourceSafe**, **SVN**.
When searching for plug-ins, make sure to look for ones that support the same version of Eclipse that your version of CCS is based off of for best compatibility (CCSv6.0 is based off Eclipse 4.3, CCSv6.1 is based off 4.4, CCSv6.1.3 is based off 4.5.1, CCSv7.0 is based off 4.6).
You can install Eclipse plug-ins by one of these methods:
- Use the Eclipse Update Manager
- CCS menu Help -> Install New Software, then specify remote site (URL) or local site (directory)
- Use the Eclipse Marketplace
- CCS menu Help -> Eclipse Marketplace
- Drop-in into CCS installation
- Many plug-ins can simply be downloaded as an archive and copied into the .\ccsv7\eclipse\dropins folder