Removendo .svn dos seus projetos no Linux

Salve!

Depois de um longo período de sofrimento com os benditos .svn na hora da publicação ou empacotamento do projeto eu tomei coragem e criei um script em shell para que me auxiliasse a acabar com esse problema.

Sem muito papo, o script é ultra simples: basicamente copia seu projeto para um diretório e dessa cópia ele remove todos .svn que ver pela frente. No final eu tenho o diretório do projeto intacto e a cópia limpinha sem .svn para eu mandar pro cliente, publicar na web e etc.

Fiz um sisteminha interativo com menu de ajuda e um texto explicando como funciona tudo legalzinho, pois, acho que não sou o único a sofrer com esse problema.

Para quem se interessou pelo script, disponibilizo o link para download do mesmo: http://gpl.hlegius.pro.br/linux/svnclean.sh
Baixe, dê permissão de execução e teste rodando o comando:

CODE:
  1. $ ./svnclean ./diretorio_do_projeto

Se quiser um log, eu criei duas formas: log diretamente na saída do terminal, ou log em arquivo de texto.
Para o log direto, só adicionar -v no final; para o log em arquivo, adicione -vv

CODE:
  1. $ ./svnclean ./diretorio_do_projeto -vv

Para ajuda, digite:

CODE:
  1. $ ./svnclean

Para aqueles que programam muito em Shell Script, realmente peço que não considere a qualidade e a quantidade de linhas, pois não uso muito o shell script =X

Fica aí a dica. Espero que ajude alguém ;)



7 comentários para “Removendo .svn dos seus projetos no Linux”

  1. Rael Max says:

    Eu faço assim:
    cd diretório/
    find -name “*.svn” | xargs rm -rf

    E vai de boa! :]

  2. hlegius says:

    Rael,

    no final das contas é isso mesmo que ele faz X) – o renomado find
    A diferença é que o script cria a cópia (com cp -a) do projeto para não “danificar” o SVN do projeto original.

  3. Rael Max says:

    Ahhh saquei, ainda bem que não tenho essa preocupação! :P

    Nossos sites sempre ficam em svn. :]

  4. hlegius says:

    huum! Mas quando você publica online tu manda junto os .svn ?
    Eu uso isto apenas para publicação online, porque os projetos aqui ficam versionados para sempre também X)

  5. Alá, a preguiça tomando conta! Até um script pra isso! hehe

    Mas eu demorei um bom tempo pra descobrir o comando
    find [diretorio] -iname “.svn” -exec rm -fr {} \;

    E mandar pra produção com os .svn é um saquinho; tu demora mais tempo no FTP enviando os .svn do que os arquivos do site mesmo…
    []s!

  6. Realmente, a intenção foi boa, mas o svn export resolve.

Comente !