The Right Way to Use Source Control for Your Acumatica Customization Packages

Source Control for Acumatica

Summary

Many aspects of a custom solution for Acumatica can be done within the confines of a Visual Studio Project. However a customization project package must still be maintained within an instance of Acumatica.  Here’s a simple method of exporting and importing those changes to be captured by source control.

Method

Let’s say you already have one or more customization project packages in your Acumatica development instance (CST) and you already have a Visual Studio project created and under source control.

I make a change Create a folder within your VS project called CSTZIP for example (you can name it whatever you please.)

As you create and edit various entries within your Acumatica instance project you can periodically export a current project zip file to a location within a folder in your VS solution.  The problem here is that when another developer pulls your repository he might see a new zip file but won’t have the foggiest idea of what might have changed.

A better approach is to use the ‘Save Project to Folder‘ method.  Simply export the project to a folder that you have within your VS project by selecting ‘Save Project to Folder’ off the Source Code menu, Acumatica will export all supporting entries into text files.

Source Control in Acumatica

 

If you export the project to a subfolder called CSTZIP then a new folder with the project name will be created under CSTZIP folder.  You can do this for all of your projects individually.

Source Control in Acumatica

Source Control in Acumatica

Not only will a copy of your DLL’s and Pages be stored but also XML files representing your project entries like reports, site maps, GI’s etc.  Once exported you can commit the folder as you normally would in your source control.

As you’ve probably guessed, the ‘Open Project from Folder‘ will allow you to pull in the entire folder of files directly into your project package.  You then only need to publish the customization to apply the latest changes to your instance.

Now you can manage changes made within these folders as you normally would with your VS files.

Suggested Workflow

As you maintain your solution it might be best to just make changes within the Acumatica instance of the project and after each iteration of changes export your files by using the Save Project to Folder method.  Then sync with the repository to merge changes made by other developers.  And pull in those changes using the import process mentioned above.

Note:  the saving method here will overwrite existing files without prompting, and the open project method in Acumatica will do likewise.  This along with how Acumatica remembers where you normally store your export is a great time saver.

Hopefully this will make your development in the land of Acumatica easier to manage. If you have questions or need some assistance, visit our support page for more help.

 

 

Leave a Reply