Skip to main content

Detaching a fork

You can delete a fork and recreate the same repository, without the connection to the original network.

Who can use this feature?

People with admin access for a forked repository can delete the forked repository.

Platform navigation

About detaching forks

To turn your fork into a standalone repository, you can clone the fork, use the clone to create a new repository, and then delete the fork. This is useful when you want to take the work you are doing in a different direction or maintain distinct versions.

The new repository will no longer automatically sync with changes from the original repository.

Note

  • The new repository will not retain any of its issues, pull requests, wikis, stars, watchers, comments, child forks, or other metadata that may currently be associated with your current fork.
  • All commit metadata will be preserved. Commits may become eligible to be counted as contributions, if they meet certain criteria. For more information, see "Why are my contributions not showing up on my profile?."

Detaching a fork

You can delete a fork and recreate the same repository, without the connection to the original network.

  1. Open TerminalTerminalGit Bash.

  2. Create a bare clone of the fork.

    git clone --bare https://github.com/EXAMPLE-USER/FORK-NAME.git
    
  3. Delete the forked repository. For more information, see "Deleting a repository."

    Warning

    Deleting a fork will permanently delete any associated pull requests and configurations. This action cannot be undone.

  4. Create a new repository with the same name in the same location. For more information, see "Creating a new repository."

  5. Mirror-push the repository back to the same remote URL.

    cd FORK-NAME.git
    git push --mirror https://github.com/EXAMPLE-USER/FORK-NAME.git
    
  6. Remove temporary local clone you created earlier.

    cd ..
    rm -rf FORK-NAME.git
    

For more information, see our support page on forks.