## Description
- Git mod integration with applications behind feature flag
Fixes#37815Fixes#37816Fixes#37817Fixes#37818Fixes#37819Fixes#37820
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12526603607>
> Commit: 19f3ca0a35b16b25b2cff8700e2df4b2a497e7fe
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12526603607&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Sat, 28 Dec 2024 15:57:13 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
## Release Notes
- **New Features**
- Introduced various new hooks for Git functionalities, including
`useGitModEnabled`, `useGitCurrentBranch`, `useGitProtectedMode`, and
`useGitConnected`.
- Added a new component `DeployButton` to manage deployment actions.
- Integrated `ConnectSuccessModal` to enhance user feedback upon
successful Git connection.
- Added `GitImportModal` for improved Git import functionality.
- Introduced `GlobalProfileView` for managing and displaying user
profile information.
- Added a new icon, `CloudIconV2`, to the icon provider.
- Implemented `fetchGlobalSSHKey` and `gitImport` sagas for better state
management.
- **Improvements**
- Enhanced handling of Git-related states and actions across multiple
components and sagas.
- Streamlined selector usage for determining preview mode by replacing
`combinedPreviewModeSelector` with `selectCombinedPreviewMode`.
- Updated the `DeployPreview` component to manage success feedback and
handle commit operations more effectively.
- Improved the `StatusChangesView` component by adding a callout for
migration messages.
- Added new transformers for application status handling.
- **Bug Fixes**
- Updated error handling and loading states across various actions and
components to improve reliability.
- **Refactor**
- Refactored action creators to use `createArtifactAction` instead of
`createSingleArtifactAction` for consistency and clarity.
- Consolidated Git import and connection logic to improve modularity and
maintainability.
- Modified the `Header` component to utilize
`GitApplicationContextProvider` for managing Git-related state.
- Updated various components to utilize the new
`selectCombinedPreviewMode` selector for improved state management.
- Refactored the `DeployPreview` component to enhance its functionality
and styling consistency.
- Enhanced the `applicationStatusTransformer` to handle multiple status
transformations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Connects connect modal to store
- Adds component for branch list
Fixes#37814Fixes#37802
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12376713895>
> Commit: 34d96b492e20118aa5d82bfa10b9f09315b2bc60
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12376713895&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Tue, 17 Dec 2024 16:59:28 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a `ConnectInitialize` component for Git provider
connections.
- Added `ConnectSuccess` modal to display successful Git connections.
- Implemented `ImportModal` for Git import functionality.
- Added `LocalProfileView` for managing user profile settings.
- Introduced `BranchList` component for displaying and managing
branches.
- **Bug Fixes**
- Enhanced error handling and state management in various components.
- **Refactor**
- Streamlined prop handling and state management in multiple components.
- Updated action and selector names for clarity and consistency.
- **Tests**
- Expanded test coverage for new and modified components, ensuring
accurate behavior under various conditions.
- **Chores**
- Updated import paths and removed unused files to improve project
structure.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Description
- Adds git modal
- Adds pull saga
- Adds ability to commit
- Adds ability to merge
- Adds ability to see status
- Adds ability to discard
- Improves on saga error handling
Fixes#37826Fixes#37803Fixes#37804Fixes#37807
## Automation
/ok-to-test tags="@tag.Git"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/12319147488>
> Commit: ec461fde26da90af2f365fb36f49e3758c14cb96
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=12319147488&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.Git`
> Spec:
> <hr>Fri, 13 Dec 2024 17:27:36 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced new components for managing Git operations, including
`ConflictErrorView`, `OpsModal`, `TabDeploy`, `TabMerge`, and
`StatusChanges`.
- Added loading and error handling components such as `StatusLoader` and
`DiscardFailedError`.
- Enhanced the `StatusTree` component for displaying hierarchical status
changes.
- **Bug Fixes**
- Improved error handling across various sagas and components.
- **Refactor**
- Renamed several modal toggle functions for clarity and consistency.
- Updated prop types for improved type safety in components.
- **Chores**
- Removed unused component `GitTest`.
- Updated imports and exports for better organization.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->