How To Configure Source Control to Ignore Alpha Anywhere Files

Description

Some files and directories in an Alpha Anywhere workspace can be excluded from source control.

Discussion

Alpha Anywhere workspaces can be stored in source control systems, such as Git. Not all files in workspace, however, need to be included. Some files and directories should be excluded either because they are user specific or are not needed -- e.g. history files can be excluded because your source control system is performing the role of tracking file history.

.gitignore Template

The following is a .gitignore template for an Alpha Anywhere workspace.

If you're using a public repository on a site such as GitHub, be careful not to check in information such as user names, passwords, connection strings, or API keys when committing your projects! Alpha Anywhere includes places to put information such as a Google API Key in components. Committing a component that contains the API key to a public repository makes the key visible to everyone - even if you delete it later!

#The following files and directories can be safely excluded from a source
#control repository, such as git. These files are generated and/or are not
#needed because they perform tasks similar to source control (e.g. history files)

#replace <workspace> with the name of your workspace
#replace <project> with the name of the project. E.g. "Default"
#replace <user> with your local user name

#User-specific files found in top level directory

<workspace>.wcp_settings
<workspace>.recent_files
<workspace>.DatabaseExplorer
<workspace>.MUF
<workspace>.WebPublishHistory
<workspace>.<project>.History
<workspace>.<user>.DefWebProject
<workspace>.<user>.RecentWebProject

# Uncomment if using a Filesystem Library (A5Lib)
#<workspace>.ALM
#<workspace>.Alx
#<workspace>.MUF
#<workspace>.old_alb
#*<workspace>.old_alm
#<workspace>.old_alx

#Recommended. Files under <workspace>.A5Lib.resources (if A5Lib is used)
*.a5settings

#Folders under top level
.backup*                              #contains backup files
.history                              #contains history files

#The following files and folders are found in  a Web Project folder.
#It is recommended that these files be excluded from source control.

#Files in the web project folder for each project
*.tmp
componentTypeCache
lastSelectedProfile

#Folders under the web project folder and any subfolders under these folders
__backup.backup                        #contains component backups
__deleted.deleted                      #contains deleted files
__undo.undo                            #contains undo history
__iispublishhistory.iispublishhistory  #contains IIS publish history
__staging.staging                      #staging folder for publishing


#The following files and folders are also found in a Web Project folder.
#These files can be included or excluded from source control at developer discretion

# These are optional (but suggested), and can be included in source control 
# as they are not unique to a user.  While they are regenerated at publish, 
# they should be unique to the component.
*._a5wcmp_manifest
*._a5wcmp_metadata
*._a5wcmp_compiled

#These are usually the same for multiple users, but may be unique.
#Uncomment to exclude from source control

#ProjectProperties.projectProperties    #contains all of the project properties
#pages.SecuritySettings                 #page and component security settings
#Project.SecuritySettings               #Security settings for project
#DataLink.SecuritySettings              #Connection data to any SQL security tables
#project.settings                       #All publish settings

#Uncomment to exclude Cordova project files from source control
#PhoneGapProjects                       #contains Cordova project files

Using the Filesystem Library

If you plan to use source control with a workspace, it is recommend to convert the workspace to use a filesystem library, which will place information such as connection strings inside a file that can be explicitly omitted from source control. This recommendation applies to desktop, web, and mobile application projects.

You can convert your workspace to use a filesystem library as follows:

  1. Open the Control Panel.

  2. Open the Code tab.

  3. Right-click anywhere in the Code tab and select Convert library to filesystem dictionary... from the context menu. Enter any passwords that you may have for password protected scripts and functions defined on the Control Panel and click OK.

    images/filesystemLibrary.png

Component File Format

Components can be saved using either a binary or JSON file format. It is recommended that components are saved using the JSON file format if they will be checked into source control. You can configure the file format used by components in the component properties:

You can also perform a bulk operation to convert existing components in a project to use a JSON file format.

See Change Component storage type Bulk Operation to learn more.