---
sourceDocument: Zurich Build or modify applications
sourceDocumentLink: https://www.servicenow.com/docs/r/zurich/application-development

 Release :

    - zurich

ft:locale :

    - en-US

ft:publication_title :

    - Zurich Build or modify applications

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Development, Data, and Analytics


---

# Source control integration

# Source control integration in ServiceNow Studio {#ariaid-title1}

Release version: Zurich  
Updated July 31, 2025  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 2 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Source Control Integration in ServiceNow Studio

The source control integration in ServiceNow Studio allows application developers to connect their applications to a Git repository, enabling version control and collaborative development for global or scoped applications in non-production instances.
This integration facilitates the management of application versions and changes effectively.
Show full answer Show less  

## Key Features

* **Import Applications:** Developers can import applications directly from a Git repository.
* **Remote Changes:** Pull and apply updates from a remote Git repository.
* **Commit Changes:** Save local modifications by committing them to the Git repository.
* **Versioning:** Create tags for specific application versions and branches for managing multiple versions.
* **Studio Management:** Utilize ServiceNow Studio to manage repository settings, edit credentials, and switch branches.

## Integration Requirements

* Admin role is required for users linking applications to source control.
* Non-production instances need network access to the Git repository.
* Each application should have its own dedicated Git repository.
* Repository credentials must provide read and write access.

## Key Outcomes

By integrating source control, developers can enhance collaboration and track changes efficiently. However, note that this feature is not available for production instances; alternative management methods include using the application repository, update sets, or ServiceNow Studio. Additionally, the integration includes a validation and sanitization process to ensure the integrity of application files during operations.  
Enable application developers to integrate with a Git source control repository. Save and manage multiple versions of a global or scoped application from a non-production instance.  
Linking an application to source control enables all application developers on a non-production instance to:

* Import applications from a Git repository.
* Pull and apply remote changes from a Git repository.
* Commit all local changes on the instance to a Git repository.
* Create tags to permanently link to a given version of an application.
* Create branches to maintain multiple versions of an application simultaneously.
{#source-control-integration__ul_f23_qsk_p5}

## Integration requirements {#source-control-integration__section_bgq_czg_kjb}

To link an application to source control:

* The user must have the admin role.
* The non-production instance must have network access to the Git repository.
* Each application must be within its own Git repository.
* The repository user credentials must grant read and write access.
{#source-control-integration__ul_spw_bhl_p5}  
Note:  
All application developers on the instance share a single set of credentials per repository.

## Options available from ServiceNow Studio {#source-control-integration__section_k2d_kyg_kjb}

After linking an application to source control, application developers can use ServiceNow Studio to manage the repository. From ServiceNow Studio, developers can:

* Edit the application repository credentials.
* Commit all local changes on the instance.
* Apply remote changes from the repository.
* Create a branch.
* Switch branches.
* Import an application from a remote repository.
{#source-control-integration__ul_u55_hl4_q5}

Source control integration does not support managing applications on a production instance. Instead, you can manage applications on a production instance using the application repository, an update set, or ServiceNow Studio. For more information about managing applications on a production instance, see [Application sharing](https://www.servicenow.com/docs/0uoOiEVZlhVbPQG7Ik_PLw "Administrators can share applications that are complete and are ready for use on other instances.").

## Options available from a Git repository {#source-control-integration__section_spn_nyg_kjb}

The ServiceNow AI Platform offers limited support for modifying linked application files outside of an instance. From Git, developers can:

* Move application files to a different Git directory structure.
* Edit application files outside of ServiceNow Studio.
{#source-control-integration__ul_gtn_34f_kjb}

The system generates a properties text file called sn_source_control.properties at the root level of the repository. To move application files to a different Git directory structure, application developers can
set the path parameter to specify the subfolder path containing their application files. For example, if you moved your application to the src/app subfolder, set the
path to `path=src/app`.  
The system generates a checksum.txt file in the Git repository to determine if any application files have been changed outside of ServiceNow Studio. When the checksum value from the file matches the current checksum value, the integration skips the validation and sanitization process. When the checksum values do not match, the integration validates and sanitizes the application files as part of the source control operation. The sanitization process:

* Creates upgrade log entries for each sanitization action taken.
* Removes unsupported folders and files from the repository.
* Aborts all source control operations when a system application file fails XML schema validation. For example, if a database dictionary record fails XML schema validation, the system aborts all operations.
* Skips the current source control operation when a non-system application file fails XML schema validation.
{#source-control-integration__ul_sqt_z4f_kjb}

The Git integration sanitizes only content within the application path listed in the sn_source_control.properties file. Repository content outside the application path is ignored.

## MID Server support {#source-control-integration__section_ew2_4y1_njb}

Use an existing MID Server to connect to a source control repository. Connecting an application through a MID Server enables access to repositories behind a firewall.

## Source control role permissions {#source-control-integration__section_adt_l4c_yxb}

For more information on roles and collaborators, see [Application collaboration](https://www.servicenow.com/docs/Ljm_vK6gYJ0sIX1tB78CCg "People with admin privileges can manage the permissions of developers collaborating on an application.").
* **[Link an app to source control in ServiceNow Studio](https://www.servicenow.com/docs/oDv6n5wc~~FbzEDmJVi3Ng)**   
  Linking an application or application-customization to source control allows application developers to manage changes in ServiceNow Studio from a Git repository.
* **[Edit a Git repository configuration in ServiceNow Studio](https://www.servicenow.com/docs/k7Qf_4wQ5mQNEjxSn_C4HQ)**   
  You can edit a Git repository's integration with ServiceNow Studio to change the network protocol selection, credentials, or other field entries.

