Dando continuidade ao assunto anterior.. os principais comandos do Subversion.
Acho que nada mais simples do que um “help”, para saber todos os comandos. O “help” do subversion, é mais legal do que os outros, pois ele fornece help dos comandos com svn. Por exemplo:
svn help update
Será retornado todos os argumentos do update
update (up): Bring changes from the repository into the working copy. usage: update [PATH...] Opções válidas: -r [--revision] ARG : ARG (alguns comandos também usam faixa ARG1:ARG2) Um número de revisão pode ser um entre: NÚMERO número da revisão '{' DATA '}' revisão no início da data 'HEAD' último no repositório 'BASE' revisão base do item da cópia de trabalho 'COMMITED' último commit em ou antes de BASE 'PREV' revisão exatamente antes de COMMITED -N [--non-recursive] : obsoleto; tente --depth=files ou --depth=immediates --depth ARG : limite de operação por profundidade de ARG ('vazio', 'arquivos', 'imediatos', ou 'infinito') --set-depth ARG : definir a profundidade da nova cópia de trabalho para ARG ('excluir', 'vazio', 'files', 'imediatos', ou 'infinito') -q [--quiet] : não mostra nada, ou apenas informações resumidas --diff3-cmd ARG : usa ARG como comando merge --force : força operação a rodar --ignore-externals : ignora definições externas --changelist ARG : operar apenas sobre membros da lista de alterações ARG [apelidos: --cl] --editor-cmd ARG : usa ARG como editor externo --accept ARG : especificar a ação de resolução de conflitos automática ('postpone', 'base', 'mine-conflict', 'theirs-conflict', 'mine-full', 'theirs-full', 'edit', 'launch') Opções globais: --username ARG : especifica um nome de usuário ARG --password ARG : especifica uma senha ARG --no-auth-cache : não guarda tokens de autenticação em cache --non-interactive : não usa prompt interativo --trust-server-cert : aceitar certificado de servidor SSL desconhecido sem mostrando (mas apenas com '--no-interactive') --config-dir ARG : lê arquivos de configuração do usuário do diretório ARG --config-option ARG : definir opção de configuração do usuário no formato: ARQUIVO:SEÇÃO:OPÇÃO=[VALOR] Por exemplo: servidores:global:http-library=escravo
Bom, se desejar algo mais avançado do SVN e tiver dúvidas sobre como fazê-lo, nada mais facil do que utilizar este help, que é notavelmente completo.
Principais comandos Realmente:
-
Checkout
O principal para começar tudo, “checkout”, que é o comando para você “baixar” o repositório desejado.
svn checkout <url_repositorio>
Essa url_repositorio é variável se for local, pode se utilizar:
file:///home/metal/my_repositorio
Se for externo e acessado pelo http:
http://viniciusmuniz.com:95/my_repository
ps.: Se a porta for 80 não é necessário informar a mesma. NO meu caso, como é a 95 coloquei o “:95”;
Se for pelo protocolo do SVN utiliza-se:
svn://viniciusmuniz.com/my_repository ou svn+ssh://viniciusmuniz.com/my_repository
-
Update
Utilizado para atualização do repositório, como o próprio nome diz.. esse tem nem o que explicar.
svn update <caminho do repositório ou parte do repositorio que deseja utilizar>
-
Commit
Segue o mesmo padrão do update.
svn commit <caminho do repositório até o arquivo que se deseja comitar>
-
Delete
A diferença do delete, é que nele pode se passar a url no lugar do caminho, e dessa forma será deletado imediatamente. E se for passado o caminho local, ele só será deletado após o commit.
svn delete <caminho do repositório até o arquivo que se deseja comitar>
Conclusão
Acredito que esses sejam os comandos mais usados no dia a dia. A única coisa a se acrescentar são os argumentos –username e –password, para definir o usuário e a senha respectivamente.
Caso haja alguma dúvida, estou a disposição para esclarece-los.
Muito Bom o artigo, mas fiquei com uma duvida: eu criei meu repositorio e como trabalhamos em 3, ele precisam apenas tem instalado o svn e depois fazem um checkout com o endereço que esta na minha maquina? e para criar novos usuario?
Olá Alefe,
Primeiro Obrigado!
Em relação a sua dúvida, isso vai depender, de como você está configurando o acesso, se por DAV, pelo httpd, pelo ssh.
Quando executo qualquer comando SVN o terminal diz que SVN não é um comando válido.
Via(Botão direito) crio Server, crio vários cliente, commit, tudo funciona, porém a linha de comando o terminal reclama que SVN não é um comando válido.
Provavelmente não está instalado o SVN em sua maquina.
Qual o sistema operacional?