Como remover os malditos .svn
Author: Jonas Abreu
29
Jun
Uma das coisas que mais me atrapalhava com o svn era quando eu queria gerar um snapshot do que tinha no repositório, mas sem os .svn .
Um one-liner bash que faz isso:
find . -iname .svn | xargs rm -fr
Explicação:
-
find . -iname .svn: Encontra todos os arquivos ou diretórios que se chamem .svn
-
xargs rm -fr: O xargs é um programa que executa o que vier depois dele pra cada linha que ele receber como entrada. Por isso apaga todos os .svn.
Posts Relacionados:
Como descobrir todos que commitaram em um repositório SVN
Como migrar de SVN para GIT
Git Workflow
Desfazendo o envio de um e-mail enviado pelo Postfix
Truques do Bash
Por que filtrar ips não deu certo
Sincronizando o Address Book do seu mac com os Contatos do Gmail
Acompanhe-nos por
RSS, por Email ou via Twitter.
Veja como ter um desconto no Dreamhost: um excelente servidor web.
9 Responses for "Como remover os malditos .svn"
Jonas
Existe uma maneira mais fácil de fazer isso. Usando svn export. Como usar ?
Simples: No diretório que você tiver versionado faça:
$ svn export DESTINO
Onde DESTINO é a path que você quer jogar o repositório.
Abraços
Poxa… destruiu o meu post hahahaha
Mas pelo menos o pessoal vai aprender a usar o find e o xargs :)
E eu apredi uma coisa nova :D
Valeu!
O caboclo pode não ter nem querer ter o subversion instalado localmente, para tanto os macetes de shell vão bem.
Eu faço diferente:
for fl `find ./ -name ‘.svn’`;do rm -Rf $fl;done
Faz a mesma coisa diferente :-)
Também ia falar do svn export, mas o Flores chegou antes. Mala!
Eu usaria só o find:
find . -name .svn -exec rm -rf “{}” \;
O comentário 3 me lembra o que eu costumo fazer quando quero executar um conjunto de comandos pra cada arquivo encontrado pelo find (em vez de um só), e evitando expandir uma lista de argumentos gigante:
find . -name “*.txt” | while read file; do something “$file”; something -else “$file”; yet -a nother –thing “$file”; done
Também ia falar do svn export, mas o Flores chegou antes. Mala! [2] hehehe
E eu aprendi várias maneiras de fazer a mesma coisa …
Tinha feito ( mais como estudo do que outra coisa ) um script em python para isto .. hehehe
Uh como o Linux/Unix é bão !
Valeu pessoal…
Achei super útil o script, claro que podemos usar o svn export, mas como o Dorileo disse, o cara pode não ter o subversion instalado, ai ferrou. Outra situação por exemplo é quando copiamos pegamos um projeto em que alguém jogou uma API ou um pack de classes que já estava versionado e ai fica aquela lambança de diretorios com .svn para todo lado e como não é um projeto específico não da para dar um svn export.
Bom é isso, bela dica Jonas.
É eu sei, desenterrei o post rs.
[]s
Muito cuidado ao usar o xargs com rm -Rf !!!!
já pensou se o primeiro comando vem vazio?
vc ira usar o rm -rf dentro do diretorio corrente do script… pode ser desastroso…
Leave a reply