<commit_before>---
title: "Using version control"
order: 75
page_id: "version_control"
warning: false
updated: 2022-03-23
contextual_links:
  - type: section
    name: "Prerequisites"
  - type: link
    name: "Grouping requests in Collections"
    url: "/docs/sending-requests/intro-to-collections/"
  - type: section
    name: "Additional Resources"
  - type: subtitle
    name: "Videos"
  - type: link
    name: "Version Control for Collections | Postman Level Up"
    url: "https://www.youtube.com/watch?v=QKxukXJWRPI&list=PLM-7VG-sgbtC5tNXxd28cmePSa9BYwqeU&index=7"
  - type: subtitle
    name: "Blog Posts"
  - type: link
    name: "Streamline the API Development Lifecycle with Postman Version Control"
    url: "https://blog.postman.com/streamline-api-development-lifecycle-with-postman-version-control/"
  - type: section
    name: "Next Steps"
  - type: link
    name: "Versioning APIs"
    url: "/docs/designing-and-developing-your-api/versioning-an-api/"
---

Postman's version control features provide a way for you and your team to collaboratively build an API. You can fork a collection or environment, make updates to the fork, create a pull request, and merge your changes into the parent entity.

> Version control for collections and environments is different from API versioning. For information on managing multiple versions of APIs, see [Versioning APIs](/docs/designing-and-developing-your-api/versioning-an-api/).

* [Forking Postman entities](#forking-postman-entities)
    * [Creating a fork](#creating-a-fork)
    * [Viewing fork information](#viewing-fork-information)
* [Creating pull requests](#creating-pull-requests)
    * [Creating public pull requests](#creating-public-pull-requests)
    * [Pull request settings](#pull-request-settings)
* [Watching a pull request](#watching-a-pull-request)
* [Reviewing pull requests](#reviewing-pull-requests)
    * [Viewing the diff](#viewing-the-diff)
    * [Adding comments](#adding-comments)
    * [Editing or declining a pull request](#editing-or-declining-a-pull-request)
    * [Approving a pull request](#approving-a-pull-request)
    * [Pulling updates](#pulling-updates)
    * [Merging changes](#merging-changes)
* [Resolving conflicts](#resolving-conflicts)

## Forking Postman entities

A _fork_ is a new instance of an entity that you can modify without making any changes to the parent entity. In Postman, you can fork collections and environments. Forking also enables you to contribute to a collection or an environment without having [editor access](/docs/collaborating-in-postman/roles-and-permissions/#element-based-roles) to that entity.

### Creating a fork

> To fork a collection or environment within a public workspace, you must enable your public profile in your [profile settings](https://go.postman.co/settings/me). For more information on making your profile public, see [Managing your account](/docs/getting-started/postman-account/#making-your-profile-public).

When you fork a Postman collection or environment, you create a copy of it in a different workspace. You must be signed in create a fork.

To fork a collection or environment:

1. Select the entity in the sidebar.
2. In the overview tab that appears, select **Fork** <img alt="Fork icon" src="https://assets.postman.com/postman-docs/icon-fork.jpg#icon" width="14px"> in the upper right.

    > You can also create a fork by hovering over the entity in the sidebar and selecting the more actions icon <img alt="More actions icon" src="https://assets.postman.com/postman-docs/icon-more-actions-v9.jpg#icon" width="16px"> next to its name, then **Create a Fork**.

3. Enter a label for your fork, and select a workspace to save it to.
4. Select **Fork Collection** or **Fork Environment**.

    <img src="https://assets.postman.com/postman-docs/fork-collection-v9.1.jpg" alt="Create fork tab" width="400px"/><commit_msg>Add "to" in "Creating a fork"<commit_after>---
title: "Using version control"
order: 75
page_id: "version_control"
warning: false
updated: 2022-03-23
contextual_links:
  - type: section
    name: "Prerequisites"
  - type: link
    name: "Grouping requests in Collections"
    url: "/docs/sending-requests/intro-to-collections/"
  - type: section
    name: "Additional Resources"
  - type: subtitle
    name: "Videos"
  - type: link
    name: "Version Control for Collections | Postman Level Up"
    url: "https://www.youtube.com/watch?v=QKxukXJWRPI&list=PLM-7VG-sgbtC5tNXxd28cmePSa9BYwqeU&index=7"
  - type: subtitle
    name: "Blog Posts"
  - type: link
    name: "Streamline the API Development Lifecycle with Postman Version Control"
    url: "https://blog.postman.com/streamline-api-development-lifecycle-with-postman-version-control/"
  - type: section
    name: "Next Steps"
  - type: link
    name: "Versioning APIs"
    url: "/docs/designing-and-developing-your-api/versioning-an-api/"
---

Postman's version control features provide a way for you and your team to collaboratively build an API. You can fork a collection or environment, make updates to the fork, create a pull request, and merge your changes into the parent entity.

> Version control for collections and environments is different from API versioning. For information on managing multiple versions of APIs, see [Versioning APIs](/docs/designing-and-developing-your-api/versioning-an-api/).

* [Forking Postman entities](#forking-postman-entities)
    * [Creating a fork](#creating-a-fork)
    * [Viewing fork information](#viewing-fork-information)
* [Creating pull requests](#creating-pull-requests)
    * [Creating public pull requests](#creating-public-pull-requests)
    * [Pull request settings](#pull-request-settings)
* [Watching a pull request](#watching-a-pull-request)
* [Reviewing pull requests](#reviewing-pull-requests)
    * [Viewing the diff](#viewing-the-diff)
    * [Adding comments](#adding-comments)
    * [Editing or declining a pull request](#editing-or-declining-a-pull-request)
    * [Approving a pull request](#approving-a-pull-request)
    * [Pulling updates](#pulling-updates)
    * [Merging changes](#merging-changes)
* [Resolving conflicts](#resolving-conflicts)

## Forking Postman entities

A _fork_ is a new instance of an entity that you can modify without making any changes to the parent entity. In Postman, you can fork collections and environments. Forking also enables you to contribute to a collection or an environment without having [editor access](/docs/collaborating-in-postman/roles-and-permissions/#element-based-roles) to that entity.

### Creating a fork

> To fork a collection or environment within a public workspace, you must enable your public profile in your [profile settings](https://go.postman.co/settings/me). For more information on making your profile public, see [Managing your account](/docs/getting-started/postman-account/#making-your-profile-public).

When you fork a Postman collection or environment, you create a copy of it in a different workspace. You must be signed in to create a fork.

To fork a collection or environment:

1. Select the entity in the sidebar.
2. In the overview tab that appears, select **Fork** <img alt="Fork icon" src="https://assets.postman.com/postman-docs/icon-fork.jpg#icon" width="14px"> in the upper right.

    > You can also create a fork by hovering over the entity in the sidebar and selecting the more actions icon <img alt="More actions icon" src="https://assets.postman.com/postman-docs/icon-more-actions-v9.jpg#icon" width="16px"> next to its name, then **Create a Fork**.

3. Enter a label for your fork, and select a workspace to save it to.
4. Select **Fork Collection** or **Fork Environment**.

    <img src="https://assets.postman.com/postman-docs/fork-collection-v9.1.jpg" alt="Create fork tab" width="400px"/>
{'fraction_non_alphanumeric': 0.11032531824611033, 'fraction_numerical': 0.007715057220007715, 'mean_word_length': 4.316473000683527, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 15, 'https://': 12, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2558175', 'n_tokens_mistral': 2386, 'n_tokens_neox': 2266, 'n_words': 793}