# Working with forks

Forks are often used in open source development on GitHub.

## Links

* [About forks](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks)

  A fork is a new repository that shares code and visibility settings with the original "upstream" repository.

* [Fork a repository](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo)

  A fork is a new repository that shares code and visibility settings with the original upstream repository.

* [About permissions and visibility of forks](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/about-permissions-and-visibility-of-forks)

  The permissions and visibility of forks depend on whether the upstream repository is public or private, whether it is owned by an organization, and the policies of your enterprise.

* [Configuring a remote repository for a fork](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/configuring-a-remote-repository-for-a-fork)

  You must configure a remote that points to the upstream repository in Git to sync changes you make in a fork with the original repository. This also allows you to sync changes made in the original repository with the fork.

* [Syncing a fork](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/syncing-a-fork)

  Sync a fork of a repository to keep it up-to-date with the upstream repository.

* [Allowing changes to a pull request branch created from a fork](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/allowing-changes-to-a-pull-request-branch-created-from-a-fork)

  For greater collaboration, you can allow commits on branches you've created from forks in your personal account.

* [What happens to forks when a repository is deleted or changes visibility?](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/what-happens-to-forks-when-a-repository-is-deleted-or-changes-visibility)

  Deleting your repository or changing its visibility affects that repository's forks.

* [Detaching a fork](/en/pull-requests/collaborating-with-pull-requests/working-with-forks/detaching-a-fork)

  You can disconnect a repository from its fork network by leaving the network or manually deleting the fork and recreating it without any connection to the original.