Skip to main content

Movendo um arquivo para um novo local

Você pode transferir um arquivo para um diretório diferente em GitHub ou usando a linha de comando.

Platform navigation

Além de alterar o local do arquivo, você também pode atualizar o conteúdo do arquivo ou dar a ele um novo nome no mesmo commit.

Transferindo um arquivo para um novo local em GitHub

Dicas:

  • Se você tentar mover um arquivo em um repositório ao qual não tem acesso, criaremos um fork do projeto na sua conta pessoal e ajudaremos você a enviar uma solicitação de pull para o repositório original após o commit da alteração.
  • Alguns arquivos, como imagens, exigem que você os mova com a linha de comando. Para obter mais informações, confira "Movendo um arquivo para um novo local".
  • Se um repositório tiver algum branch protegido, você não poderá editar ou enviar arquivos no branch protegido usando o GitHub. Para obter mais informações, confira "Sobre branches protegidos".

Você pode usar GitHub Desktop para mover suas alterações para um novo branch e fazer commit das mesmas. Para obter mais informações, confira "Fazer commit e revisar as alterações no seu projeto no GitHub Desktop".

  1. No repositório, navegue até o arquivo que deseja mover.
  2. No canto superior direito da exibição de arquivo, clique em para abrir o editor de arquivos.

Captura de tela de um arquivo. No cabeçalho, um botão, rotulado com um ícone de lápis, está contornado em laranja escuro.

Observação: em vez de editar o arquivo e fazer commit dele usando o editor de arquivos padrão, você pode optar por usar o editor de código github.dev selecionando o menu suspenso e clicando em github.dev. Você também pode clonar o repositório e editar o arquivo localmente por meio de GitHub Desktop clicando em GitHub Desktop .

Captura de tela de um arquivo. No cabeçalho, um ícone de triângulo para baixo está contornado em laranja escuro.

1. No campo Nome de arquivo, mude o nome do arquivo usando estas diretrizes: - Para mover o arquivo **para uma subpasta**, digite o nome da pasta desejada, seguido de `/`. Sua nova pasta é um novo item na navegação estrutural. - Para mover o arquivo para um diretório **acima do local atual do arquivo**, posicione o cursor no início do campo de nome do arquivo e digite `../` para subir um nível de diretório completo ou digite a chave `backspace` para editar o nome da pasta pai.
  1. Clique em Fazer commit das alterações...

  2. No campo "Mensagem do commit", digite uma mensagem curta e relevante que descreva a alteração que você fez no arquivo. Você pode atribuir o commit a mais de um autor na mensagem de commit. Para obter mais informações, confira "Criar um commit com vários autores".

  3. Abaixo dos campos de mensagem do commit, opte por adicionar o commit ao branch atual ou a um novo branch. Se seu branch atual for o branch-padrão, você deverá optar por criar um novo branch para seu commit e, em seguida, criar um pull request. Para obter mais informações, confira "Como criar uma solicitação de pull".

    Captura de tela de uma solicitação de pull GitHub mostrando um botão de opção para confirmar diretamente no branch principal ou para criar um branch. O novo branch está selecionado.

  4. Clique em Fazer commit de alterações ou em Propor alterações.

Mover um arquivo para um novo local usando a linha de comando

Você pode usar a linha de comando para mover arquivos dentro de um repositório, removendo o arquivo do local antigo e adicionando-o ao novo local.

Muitos arquivos podem ser movidos diretamente no GitHub, mas alguns arquivos, como imagens, exigem que você os mova por meio da linha de comando.

Esse procedimento pressupõe que você já:

  1. No seu computador, mova o arquivo para a nova localização dentro do diretório que foi criado localmente em seu computador quando você clonou o repositório.

  2. Abra TerminalTerminalGit Bash.

  3. Use git status para verificar os locais de arquivo antigos e novos.

    $ git status
    > # On branch YOUR-BRANCH
    > # Changes not staged for commit:
    > #   (use "git add/rm <file>..." to update what will be committed)
    > #   (use "git checkout -- <file>..." to discard changes in working directory)
    > #
    > #     deleted:    /OLD-FOLDER/IMAGE.PNG
    > #
    > # Untracked files:
    > #   (use "git add <file>..." to include in what will be committed)
    > #
    > #     /NEW-FOLDER/IMAGE.PNG
    > #
    > # no changes added to commit (use "git add" and/or "git commit -a")
    
  4. Prepare a arquivo para commit em seu repositório local. Isso excluirá, ou git rm, o arquivo do local antigo e adicionará, ou git add, o arquivo ao novo local.

    $ git add .
    # Adds the file to your local repository and stages it for commit.
    # Para cancelar o preparo de um arquivo, use 'git reset HEAD ARQUIVO'.
    
  5. Use git status para verificar as alterações preparadas para o commit.

    $ git status
    > # On branch YOUR-BRANCH
    > # Changes to be committed:
    > #   (use "git reset HEAD <file>..." to unstage)
    > #
    > #    renamed:    /old-folder/image.png -> /new-folder/image.png
    # Displays the changes staged for commit
    
  6. Faça commit do arquivo que você preparou no repositório local.

    $ git commit -m "Move file to new directory"
    # Commits the tracked changes and prepares them to be pushed to a remote repository.
    # Para remover esse commit e modificar o arquivo, use "git reset --soft HEAD~1", faça o commit e adicione o arquivo novamente.
    
  7. Efetue push das alterações no repositório local para o GitHub.com.

    $ git push origin YOUR_BRANCH
    # Pushes the changes in your local repository up to the remote repository you specified as the origin