Remover arquivos de um repositório no Git
Este tutorial mostrará como remover arquivos de um repositório Git.
Git permite um ambiente de desenvolvimento colaborativo. Assim, muitos arquivos são enviados a um repositório Git por uma equipe de desenvolvedores.
Freqüentemente, encontramos alguns arquivos que não são mais necessários ou são redundantes. Nesses casos, consideraríamos adequado excluir esses arquivos ou pastas já confirmados no repositório.
Vamos agora ilustrar isso com um exemplo.
Usando git rm
para remover arquivos e pastas no repositório Git
Suponha que temos uma pasta chamada folder1
no repositório Git. Além disso, considere que esta pasta possui dois arquivos, file1
e file2
.
$ ls folder1/
file1 file2
Para excluir um arquivo no repositório Git, precisamos fazer o seguinte.
$ git rm <filename>
$ git commit -m "commit message"
$ git push origin branch_name
O primeiro comando exclui um arquivo do repositório Git e do sistema de arquivos. Os comandos subsequentes são usados para cometer as alterações e enviar por push a exclusão do arquivo de alteração (ou seja,) para o repositório remoto.
Assim, para deletar file1
, faremos o seguinte em nosso exemplo.
$ cd folder1
$ git rm file1
rm 'folder1/file1'
Mudamos para folder1
e excluímos file1
do repositório e do sistema de arquivos.
Podemos verificar o status da exclusão da seguinte maneira.
$ git status
On branch main
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
deleted: file1
Agora, vamos cometer essa exclusão da seguinte maneira.
$ git commit -m "deleted file"
[main 27ec53b] deleted file
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 folder1/file1
$ git push origin main
Às vezes, podemos desejar excluir o arquivo apenas do repositório e não do sistema de arquivos. Podemos querer usar esse arquivo para alguma outra finalidade.
Para excluir apenas arquivos do repositório e não do sistema de arquivos, precisamos fazer o seguinte.
$ git rm --cached file2
$ git commit -m "Removed file2 from repository only"
$ git push origin main
Quando executamos o comando git rm
com a opção --cached
, os arquivos são removidos do repositório, mas não da árvore de trabalho (ou seja, do sistema de arquivos).
Às vezes, podemos precisar excluir a pasta inteira.
Para fazer isso, precisamos adicionar a opção -r
ao comando git rm
como segue.
$ git rm -r folder1
rm 'folder1/file2'
$ git commit -m "removed folder1"
[main dabfe02] removed folder1
1 file changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 folder1/file2
$ git push origin main
Assim, em nosso exemplo, agora excluímos a pasta viz. folder1
junto com seu conteúdo.
Para obter mais informações sobre git rm
, explore o seguinte site - git rm
.