Skip to main content
Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais atualizadas, acesse a documentação em inglês.

Dividir uma subpasta em um novo repositório

Você pode transformar uma pasta em um repositório do Git repository em um novo repositório.

Se você criar um clone do repositório, não perderá nenhuma alteração ou histórico do Git quando dividir uma pasta e criar um repositório separado.

  1. Abra TerminalTerminalGit Bash.

  2. Altere o diretório de trabalho atual para o local em que deseja criar o novo repositório.

  3. Clone o repositório que contém a subpasta.

    $ git clone https://github.com/USERNAME/REPOSITORY-NAME
  4. Altere o diretório de trabalho atual para o repositório clonado.

    $ cd REPOSITORY-NAME
  5. Para filtrar a subpasta do restante dos arquivos no repositório, instale git-filter-repo, e execute git filter-repo com os argumentos a seguir.

    • FOLDER-NAME: a pasta dentro do seu projeto onde você deseja criar um repositório separado.

    Dica: usuários do Windows devem usar / para delimitar pastas.

    $ git filter-repo --path FOLDER-NAME/
    # Filter the specified branch in your directory and remove empty commits
    > Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89)
    > Ref 'refs/heads/BRANCH-NAME' was rewritten

    Agora o repositório deve conter apenas os arquivos que estava(m) na(s) subpasta(s).

  6. Crie um repositório no GitHub.

  7. Na parte superior do novo repositório na página Configuração Rápida do GitHub.com, clique em para copiar a URL do repositório remoto.

    Captura de tela do cabeçalho "Configuração Rápida" em um repositório. Ao lado da URL do repositório remoto, um ícone de dois quadrados sobrepostos está realçado com um contorno laranja.

    Dica: para obter informações sobre a diferença entre URLs HTTPS e SSH, confira "Sobre repositórios remote".

  8. Verifique o nome remoto do repositório. Por exemplo, origin ou upstream são duas opções comuns.

    $ git remote -v
    > origin  https://github.com/USERNAME/REPOSITORY-NAME.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY-NAME.git (push)
  9. Configure uma nova URL remota para o novo repositório usando o nome e a URL do repositório remote copiados na etapa 7.

    git remote set-url origin https://github.com/USERNAME/NEW-REPOSITORY-NAME.git
  10. Verifique se a URL remota mudou com o nome do novo repositório.

    $ git remote -v
    # Verify new remote URL
    > origin  https://github.com/USERNAME/NEW-REPOSITORY-NAME.git (fetch)
    > origin  https://github.com/USERNAME/NEW-REPOSITORY-NAME.git (push)
  11. Faça push das alterações para o novo repositório no GitHub.

    git push -u origin BRANCH-NAME