Apidog Docs
πŸ‡ΊπŸ‡Έ English
  • πŸ‡ΊπŸ‡Έ English
  • πŸ‡―πŸ‡΅ ζ—₯本θͺž
HomeLearning CenterSupport CenterAPI References
HomeLearning CenterSupport CenterAPI References
Discord Community
Slack Community
X / Twitter
πŸ‡ΊπŸ‡Έ English
  • πŸ‡ΊπŸ‡Έ English
  • πŸ‡―πŸ‡΅ ζ—₯本θͺž
  1. Branches
  • Apidog Learning Center
  • Get started
    • Introduce Apidog
    • Basic concepts in Apidog
    • Navigating Apidog
    • Quick Start
      • Overview
      • Specify a new endpoint
      • Make a request to the endpoint
      • Add an assertion
      • Create a test scenario
      • Share your API documentation
      • Explore more
      • Send a request and save as an endpoint
    • Migration
      • Overview
      • Manual import
      • Scheduled import
      • Import options
      • Export data
      • Import from...
        • Import from Postman
        • Import OpenAPI (Swagger) spec
        • Import cURL
        • Import Markdowns
        • Import from Insomnia
        • Import from apiDoc
        • Import .har file
        • Import WSDL
  • Design APIs
    • Overview
    • Create a new API project
    • Endpoint basics
    • Components
    • Common fields
    • Global parameters
    • Endpoint change history
    • Batch endpoint management
    • Configure multiple request body examples
    • Schemas
      • Generate Schemas from JSON etc.
      • Build a schema
      • Overview
      • Create a new schema
    • Security schemes
      • Overview
      • Create a security scheme
      • Use the security scheme
      • Security scheme in online documentation
    • Advanced features
      • Custom endpoint fields
      • Import endpoints as test steps
      • Endpoint status
      • Appearance of parameter lists
      • Endpoint unique idenfication
  • Develop and Debug APIs
    • Overview
    • Generate requests
    • Send requests
    • Endpoint cases
    • Dynamic values
    • Validate responses
    • Design-first Mode & Request-first Mode
    • Generate code
    • Environments & variables
      • Overview
      • Using variables
      • Environments & services
    • Vault secrets
      • Overview
      • HashiCorp Vault
      • Azure Key Vault
      • AWS Secrets Manager
    • Pre/Post processors
      • Overview
      • Assertion
      • Extract variable
      • Wait
      • Database operations
        • Overview
        • MongoDB
        • Redis
        • Oracle Client
      • Using scripts
        • Overview
        • Postman scripts reference
        • Pre processor scripts
        • Post processor scripts
        • Public scripts
        • Calling other programming languages
        • Using JS libraries
        • Visualizing responses
        • Script examples
          • Assertion scripts
          • Using variables in scripts
          • Using scripts to modify request messages
          • Other examples
    • Dynamic values Modules
  • Mock API data
    • Overview
    • Smart mock
    • Custom mock
    • Mock priority sequence
    • Mock scripts
    • Cloud mock
    • Self-hosted runner mock
    • Mock language (Locales)
  • Automated tests
    • Overview
    • Test reports
    • Test scenarios
      • Create a test scenario
      • Pass data between requests
      • Flow control conditions
      • Import endpoints/endpoint cases from other projects
      • Sync data from endpoints/endpoint cases
      • Export test scenarios
    • Run test scenarios
      • Run a test scenario
      • Data-driven testing
      • Run test scenarios in batch
      • Scheduled tasks
      • Manage the runtime environment of APIs from other projects
    • Test APIs
      • Integration testing
      • Performance testing
      • End-to-end testing
      • Regression testing
    • Apidog CLI
      • Overview
      • Installing and running Apidog CLI
      • Apidog CLI Options
    • CI/CD
      • Overview
      • Integrate with Jenkins
      • Integration with Gitlab
  • Publish API Docs
    • Overview
    • API Technologies Supported
    • Quick share
    • View the API documentation
    • Publish docs sites
    • Folder tree settings
    • Custom layouts
    • Visibility settings
    • Endpoint SEO settings
    • Custom domain
    • Embedding values in document URLs
    • Documentation Search
    • Integrating Google Analytics with Doc Sites
    • CORS Proxy
    • API Versions
      • Overview
      • Create API versions
      • Publish API versions
      • Share endpoints with API versions
  • Send requests
    • Overview
    • gRPC
    • Use request proxy agents for debugging
    • SOAP/WebService
    • GraphQL
    • WebSocket
    • Socket.IO
    • SSE debugging
    • Create requests
      • Request History
      • Request basics
      • Parameters and body
      • Request headers
      • Request settings
      • HTTP/2
    • Authentication and authorization
      • Overview
      • CA and client certificates
      • Authorization types supported by Apidog
      • Digest Auth
      • OAuth 1.0
      • OAuth 2.0
      • Hawk Authentication
      • Kerberos
      • NTLM
      • Akamai EdgeGrid
    • Response and cookies
      • Overview
      • API response in Apidog
      • Create and send cookies
      • Debug requests
      • Save the request as an endpoint
  • Branches
    • Overview
    • Create a new sprint branch
    • Test APIs in a branch
    • Design API in a branch
    • Merge sprint branches
    • Manage sprint branches
  • Apidog MCP Server
    • Overview
    • Conntect API Specification within Apidog Project to AI via Apidog MCP Server
    • Conntect Online API Documentation Published by Apidog to AI via Apidog MCP Server
    • Conntect OpenAPI Files to AI via Apidog MCP Server
  • Best practices
    • How to handle API signatures
    • How to access OAuth 2.0 protected APIs
    • Apidog collaboration workflow
    • Managing authentication state in Apidog
  • Administration
    • Onboarding Checklist
      • Basic Concepts
      • Onboarding Guide
    • Managing Teams
      • Managing Teams
      • Managing Team Members
      • Member Roles & Permission Settings
      • Team Activities
      • Team Resources
        • General Runner
        • Team Variables
        • Request Proxy Agent
      • Real-time Collaborations
        • Team Collaboration
    • Managing Projects
      • Managing Projects
      • Managing Project Members
      • Notification Settings
      • Project Resources
        • Database Connection
    • Managing Organizations
      • Single Sign-On (SSO)
        • SSO Overview
        • Configure Microsoft Entra ID
        • Configure Okta
        • Configure SSO for an Organization
        • Managing user accounts
        • Mapping Groups to Teams
      • SCIM Provisioning
        • Intro to SCIM Provisioning
        • Microsoft Entra ID
        • Okta
      • Organization Resources
        • Self-hosted Runner
  • Billing
    • Overview
    • Credits
    • Unable to use credit cards?
    • Managing subscriptions
    • Upgrade plan
  • Add-ons
    • API Hub
    • Apidog Intellij IDEA plugin
    • Browser Extension
      • Chrome
      • Microsoft Edge
    • Request Proxy
      • Request proxy in Apidog web
      • Request proxy in shared docs
      • Request proxy in Apidog client
  • Account & preferences
    • Language settings
    • Data backup
    • Network proxy configuration
    • Hot keys
    • Updating Apidog
    • Generate OpenAPI access token
    • Deleting account
    • Account settings
  • References
    • API-Design First Approach
    • Apidog OpenAPI/Swagger Specificaiton Extensions
    • JSONPath
    • XPath
    • Regular Expressions
    • JSON Schema
    • CSV File Format
    • Install Java Environment
    • Runner deployment environment
    • Apidog flavored Markdown
  • Apidog Europe
    • Apidog Europe
  • Support Center
  1. Branches

Merge sprint branches

Once endpoint definitions are developed and deployed within a sprint branch, you have the option to merge some or all of the endpoint changes from the sprint branch into the main branch.

Merging sprint branches#

When you are in a sprint branch, you can see the "Merge" button in the branch switch next to APIs. You can also see the Merge to main button at the right bottom of the APIs.
Apidog Merging Sprint Branches Entry Point
In automated testing, individual test scenarios require separate merging and do not merge automatically with resources in APIs. While in a sprint branch, you can find the 'Merge to Main' dropdown option by hovering over the ... button next to a test scenario in automated testing.
Apidog Merging Test Scenario Entry Point

Merging sprint branches into unprotected main branch#

If the main branch is not set asprotected, users with project merge permissions can review the changes and directly merge them into the main branch.

Overview of pending merges#

In APIs, clicking the "Merge" button opens the merge overview popup.
Apidog Merge Overview
In this popup, you will see key elements:
Filter: Use the filter to view only the resources in the current sprint branch that have been modified compared to the main branch, or view all resources in the current sprint branch. By default, modified resources are shown to help users focus on changes.
Merging Preview: This section displays the final effect on the main branch directory after merging the current sprint branch. Use this directory to confirm the placement and content of resources post-merge. Resources in the directory are marked with color-coded dots (gray for unchanged, orange for modified, green for new) to indicate their status. Use the checkboxes on the right to select or deselect resources for merging into the main branch.
Post-Merge Endpoint Status: Choose how to adjust the status of the merged resources in the main branch. Options include Follow the Current Branch, Follow Main, or Specified Status.

Detailed review of pending merges#

In the merge overview popup, you can perform additional operations on the folder content to review whether the resources should be merged into the main branch. Clicking a resource expands the popup to show detailed content, aiding in the merge decision.
Different resources have different merge logic and details:
New Resources:
New Resources refers to resources created in the current sprint branch, not present in the main branch.
If merged, the resource will be created in the main branch at the specified location.
Click to view the complete content of this resource, as shown in the image below.
Apidog New Resource Details
Modified Resources:
Modified Resources refers to resources that is forked from the main branch into the current sprint branch and associated with the main branch resource.
If merged, the main branch resource will be overwritten.
Click to see the changes of this resource compared with the main branch resource, as well as the complete content, as shown in the image below.
Apidog Modified Resource Details
Unchanged Resources:
Unchanged Resources refers to resources that is forked from the main branch without any modifications in the current sprint branch.
Unchanged resources cannot be selected for merging (and don't need to be).
Clicking shows no detailed content for this resource, as shown in the image below.
Apidog Unchanged Resource Details
Clicking the merge button at the bottom right will merge all selected resources from the folder into the main branch according to the sprint branch settings. Note that if a parent resource is not selected, none of its child resources can be merged individually.
Apidog Merge Confirmation Popup
After merging, a toast message confirms the operation's success, closes the merge popup, and opens a summary popup to review the changes made to the main branch.
Apidog Merge Completion Popup

Viewing merge details / Reverting merges in the main branch#

In the main branch, accessing the Change History of a resource displays the content modified through merges, allowing users to view detailed modification. Additionally, users can compare the content with that of other versions, facilitating easy tracking and rollback of changes.
Apidog Main Branch Resource History
Apidog Main Branch Resource History

Merging sprint branches into protected main branch#

When merging changes from a sprint branch into a protected main branch, a user with only the editing permissions must create a merge request. The project administrator will then review and approve the request before the changes are applied.

Creating a merge request#

When you clickMergein the project, it works just like merging into an unprotected main branch, allowing you to view all the changes in the current branch. From here, you can select the specific resources you want to merge into the main branch. Once selected, click theCreate Merge Requestbutton at the bottom-right corner to submit the request for review.
create-merge-request.png

Reviewing a merge request#

After a merge request is created, reviewers will see a clear notification in Project Overviewindicating a new merge request has been submitted. To review it, go toProject Overview>Merge Requests, where you can view a list of requests along with detailed information.
image.png
Clicking on a pending merge request allows the reviewer to evaluate the contents of the merge request. They can compare the content before and after the merge in detail and decide whether to approve the request. If they decide to move forward with the merge, they can click theMergebutton at the bottom right, which will merge all the changes from the current request into the main branch.
merge-request-into-main-branch.png
The merging process follows the same logic as merging into an unprotected main branch.
Once the merge is completed, the changes will be merged into the main branch, and there will be an overview table indicating the modifications made to the main branch.
modifacation-overview.png
The status of the merge request will also be updated toMerged. Clicking on it will show the details of the merged request.
merged-request-status.png

Modifying a submitted merge request#

Occasionally, after submitting a merge request, reviewers may request changes or adjustments might be needed before approval. In such cases, you can directly modify the content in the sprint branch. These changes will automatically sync with the existing merge request, eliminating the need to create a new one. The modifications will be indicated on the merge request review page.
modifying-sumitted-merge-request.png

Rejecting a merge request#

If the reviewer decides that the merge request is not suitable for the sprint branch, they can clickRejecton the merge request review page. Once rejected, the merge request will be marked asClosed. To make changes and attempt merging again, a new merge request must be created.
image.png
Clicking on a closed merge request will show all the details.
closed-merge-request-details.png

Merging automated test scenarios#

Automated test scenarios and endpoints are currently merged independently and separately. Test scenarios need to be merged individually, without an overall merge page.
Important Notes:
1.
Please merge the resources in APIs first before merging test scenarios. Failing to do so may cause related test scenarios in the main branch to run abnormally after merging.
2.
Currently, only project administrators have the ability to merge test scenarios into the protected main branch. However, we plan to implement a new feature that will allow users to submit merge requests for test scenarios, similar to the existing feature for endpoint merge requests. This will make it easier to merge test scenarios into the protected main branch in the future.
When you are in a sprint branch, hover your mouse over the ... button of a test scenario in automated testing to see the "Merge to Main" option.
Apidog Merging Test Scenario Entry Point
Clicking this opens the test scenario merge popup, displaying the following information:
Basic Information: Shows the sprint branch test scenario to be merged and the associated main branch test scenario (if any).
Last Run Result: Displays the last manual run result of the test scenario in the sprint branch. Hovering over the icon shows a summary of the results. Testers can use this information to decide whether to proceed with the merge. If the result shows Untested or Failed, it is recommended to ensure the test scenario passes the test completely before merging.
Merge Action: Options include Overwrite and Add. If the test scenario was forked from the main branch, it will be merged by overwriting the main branch resource; if the test scenario is new, it will be added to the main branch.
Apidog Test Scenario Merge Popup
Modified atΒ 2024-12-17 07:25:02
Previous
Design API in a branch
Next
Manage sprint branches
Built with