GIT Apps with Packages Best Practices | Appsmith
https://docs.appsmith.com/packages/reference/best-practices-git-packages • 49 KB fetched Open original page
GIT Apps with Packages Best Practices | Appsmith
Skip to main content
Ask AI
Search
Ask Appsmith AI Submit message
Examples How do I install Appsmith using Docker? How do I connect to my local PostgreSQL database? How do I pass inputs from a widget to a query? How do I trigger multiple queries conditionally? How do I fix the error: This value does not evaluate to type Array<Object>?
Search
Try Appsmith
* Get Started
* Introduction
* Build Your First App
* Self Hosting
* New Installation Guides
* Manage Installation
* Upgrade Installation Guides
* Concepts
* Connect Data
* Overview
* How-to Guides
* Reference
* Datasources
* Query Settings
* Concepts
* Build Apps
* Overview
* Quickstart
* How-to Guides
* Reference
* Widgets
* Accessibility
* Theme
* Sample Apps
* Write Code
* Overview
* How-to Guides
* Reference
* Global Objects
* Global Functions
* JS Libraries
* Fetch API
* Data Transformation
* JavaScript Settings
* Concepts
* Best Practices
* Manage Apps and Users
* Authentication
* Granular Access Control
* Versioning with Git
* Setup SCIM Provisioning
* Embed Appsmith
* Migrate Applications
* Audit Logs
* Branding
* External Client Portal
* Packages
* Overview
* Tutorial
* How-to Guides
* Reference
* Package Version Control
* GIT Apps with Packages Best Practices
* Code Packages
* UI Packages
* Workflows
* Overview
* Tutorial
* How-to Guides
* Reference
* Workflow Triggers
* Workflow Queries
* Workflow Functions
* Pass Parameters to Workflows
* Run History
* Troubleshooting
* Overview
* Self-hosting Errors
* Application Errors
* Product
* FAQ
* Security
* Telemetry
* Support at Appsmith
* Privacy Policy
* Release Notes
* Contribute
© 2026 Appsmith, Inc.
*
* Packages
* Reference
* GIT Apps with Packages Best Practices
On this page
GIT Apps with Packages Best Practices
This page provides essential best practices for working with Git-connected applications that use Packages, helping you maintain synchronization between your applications and their dependencies, and ensuring smooth deployments across different workspaces and instances.
Non Git-Connected Packages
When working with a Git-connected application that uses non Git-connected Packages, you need to ensure that Package updates are properly synchronized to the deployed version of your application.
Synchronizing Package Updates
Whenever a non Git-connected Package is updated, follow these steps to ensure the latest changes are reflected in the view mode of your Git-connected application:
*
Navigate to the Git-connected application in edit mode .
*
Open the Git commit modal by clicking the Commit icon button in the bottom bar or the Deploy button on the top right of the editor.
*
Click Redeploy from the Git modal to synchronize the latest Package changes to view mode.
Redeploy with packages
Alternatively, if there are any pending commits to be made to the application itself, making a commit will also ensure that the latest Package-related changes are deployed to view mode. The commit process automatically includes Package updates in the deployment.
Git-Connected Packages
When working with a Git-connected application that uses Git-connected Packages, you need to manually update the Package version in your application after a new version is published and released.
Updating Package Versions
When a Git-connected Package is published and released with a new version, follow these steps to update your application to use the new version:
*
Navigate to the Git-connected application in edit mode .
*
Open the Libraries section from the sidebar.
*
Under Packages , locate the Package that was updated and switch the version to the new one that was published.
*
Commit the changes to the application to synchronize the Package changes to view mode.
caution
If you don't redeploy or commit after updating a Package, the changes will only be visible in edit mode. The deployed (view mode) version of your application will continue to use the previous Package version until you redeploy or commit.
Importing Git-Connected Apps with Packages
When moving a Git-connected application that uses Packages to a new workspace or instance, it's important to follow the correct sequence to ensure the application can properly detect and use its Package dependencies.
Migration Steps
Follow these steps in order when importing a Git-connected application that uses Packages:
*
Move Packages first : Import or create the Packages that the application uses in the target workspace or instance. If you're moving to a different instance, you may need to export and import Packages, or recreate them in the new instance. Ensure all Package dependencies are available before importing the application.
*
Publish Packages : Publish the Packages in the new workspace or instance to make them available. For non Git-connected Packages, a publish is required to make them available in the new workspace or instance. For Git-connected Packages, they are already published and released as a particular version, so publish is not required.
*
Import the Git-connected application : After the Packages are set up and published, import the Git-connected application. The application will immediately detect the available Packages based on their names and structure. Ensure that Package names match exactly between the source and target workspaces or instances for proper detection.
*
If the application was imported first : If you import the Git-connected application before setting up the required Packages, the application will not detect the Packages and may throw errors. To resolve this, import the packages in the workspace or instance, publish them if they are non Git-connected Packages, then navigate to the application in edit mode, open the Git modal, and click Redeploy to synchronize the Package changes to the application's view mode.
CI/CD with Git-Connected Apps and Packages
When using Continuous Integration and Continuous Delivery (CI/CD) with Git-connected applications that use Packages, there are different considerations depending on whether the Packages are Git-connected or not.
Non Git-Connected Packages
For non Git-connected Packages, CI/CD will not automatically handle Package updates. You still need to follow the manual steps mentioned in Synchronizing Package Updates to update the Packages and applications using them.
Git-Connected Packages
For Git-connected Packages, CI/CD will continue to work as expected, but you need to ensure that the Package already exists in the application's workspace. Follow the steps mentioned in Migration Steps to set up the Package in the workspace before the CI/CD process runs.
Prerequisites for CI/CD
In both scenarios, the expectation is to:
* Import the packages if it is not already present in the application's workspace.
* Merge the commits to the master branch of the application to initiate the CI/CD process.
Resolving CI/CD Failures
If CI/CD fails because a new Package is not present in the workspace, follow these steps to resolve it:
* Import the Package in the application's workspace.
* If it is a non Git-connected Package, publish it to make it available.
* Then redeploy the application by either of the below steps:
* Rerun the failed CI/CD workflow to automatically deploy the application with the newly imported Package.
* Navigate to the application in edit mode , open the Git modal, and click Redeploy to synchronize the changes to the view mode.
See also
* Package Version Control
* Continuous Delivery (CI/CD) with Git
* Git Best Practices
Was this page helpful?
Edit this page
Previous
Package Version Control
Next
Code Module
* Non Git-Connected Packages
* Synchronizing Package Updates
* Git-Connected Packages
* Updating Package Versions
* Importing Git-Connected Apps with Packages
* Migration Steps
* CI/CD with Git-Connected Apps and Packages
* Non Git-Connected Packages
* Git-Connected Packages
* Prerequisites for CI/CD
* Resolving CI/CD Failures
* See also
Links found on this page
- Skip to main content [direct]
- Try Appsmith [direct]
- Get Started [direct]
- Build Your First App [direct]
- Self Hosting [direct]
- New Installation Guides [direct]
- Manage Installation [direct]
- Upgrade Installation Guides [direct]
- Concepts [direct]
- Connect Data [direct]
- How-to Guides [direct]
- Reference [direct]
- Query Settings [direct]
- Concepts [direct]
- Build Apps [direct]
- Quickstart [direct]
- How-to Guides [direct]
- Reference [direct]
- Widgets [direct]
- Accessibility [direct]
- Theme [direct]
- Sample Apps [direct]
- Write Code [direct]
- How-to Guides [direct]
- Reference [direct]
- Global Objects [direct]
- Global Functions [direct]
- JS Libraries [direct]
- Fetch API [direct]
- Data Transformation [direct]
- JavaScript Settings [direct]
- Concepts [direct]
- Best Practices [direct]
- Manage Apps and Users [direct]
- Granular Access Control [direct]
- Versioning with Git [direct]
- Setup SCIM Provisioning [direct]
- Embed Appsmith [direct]
- Migrate Applications [direct]
- Audit Logs [direct]
- Branding [direct]
- External Client Portal [direct]
- Packages [direct]
- Tutorial [direct]
- How-to Guides [direct]
- Reference [direct]
- Code Packages [direct]
- UI Packages [direct]
- Workflows [direct]
- Tutorial [direct]
- How-to Guides [direct]
- Reference [direct]
- Workflow Queries [direct]
- Workflow Functions [direct]
- Pass Parameters to Workflows [direct]
- Run History [direct]
- Troubleshooting [direct]
- Self-hosting Errors [direct]
- Application Errors [direct]
- Product [direct]
- Security [direct]
- Telemetry [direct]
- Support at Appsmith [direct]
- Privacy Policy [direct]
- Release Notes [direct]
- Contribute [direct]
- Continuous Delivery (CI/CD) with Git [direct]
- Git Best Practices [direct]
- Edit this page [direct]
|
|