Forking a repository is similar to copying a repository, with two major differences:
- You can use a pull request to suggest changes from your user-owned fork to the original repository in its GitHub instance, also known as the upstream repository.
- You can bring changes from the upstream repository to your local fork by synchronizing your fork with the upstream repository.
Puedes bifurcar un repositorio hacia tu cuenta de usuario o hacia cualquier organización en donde tengas permisos de creación de repositorios. Para obtener más información, consulta la sección "Roles en una organización".
Si tienes acceso a un repositorio privado y el propietario permite las bifurcaciones, puedes bifurcar el repositorio hacia tu cuenta de usuario o hacia cualquier organización en tu instancia de GitHub Enterprise Server en donde tengas permisos de creación de repositorios.
Puedes utilizar GitHub Desktop para bifurcar un repositorio. Para obtener más información, consulta la sección "Clonar y bifurcar repositorios desde GitHub Desktop".
Deleting a fork will not delete the original upstream repository. You can make any changes you want to your fork—add collaborators, rename files, generate Páginas de GitHub—with no effect on the original.
In open source projects, forks are often used to iterate on ideas or changes before they are offered back to the upstream repository. When you make changes in your user-owned fork and open a pull request that compares your work to the upstream repository, you can give anyone with push access to the upstream repository permission to push changes to your pull request branch (including deleting the branch). This speeds up collaboration by allowing repository maintainers the ability to make commits or run tests locally to your pull request branch from a user-owned fork before merging. You cannot give push permissions to a fork owned by an organization.
Las bifurcaciones privadas heredan la estructura de permisos del repositorio ascendente o padre. Esto ayuda a que los propietarios de repositorios privados mantengan el control sobre su código. Por ejemplo, si el repositorio ascendente es privado y otorga acceso de lectura/escritura a un equipo, entonces el mismo equipo tendrá este tipo de acceso en cualquier bifurcación de dicho repositorio ascendente. Las bifurcaciones privadas solo heredarán los permisos de equipo (y no los iniciales).
If you want to create a new repository from the contents of an existing repository but don't want to merge your changes to the upstream in the future, you can duplicate the repository or, if the repository is a template, you can use the repository as a template. For more information, see "Duplicating a repository" and "Creating a repository from a template".