Esta página ainda é um esboço. Contribua! Clique em editar. (:wink:)
Descrição
FAQ
Foi criada uma lista de discussão sobre o
PureDeposito. Participe!
- Para se inscrever
- mande email para puredeposito-subscribe@estudiolivre.org
- Para falar com a galera
- mande email para puredeposito@estudiolivre.org
Usando SVN
Porque?
Bem, o svn é um programa de controle de versões; Basicamente a escolha foi para permitir que várias pessoas editem os arquivos ao mesmo tempo, mantendo um histórico das versões anteriores.
Instalação do subversion
aptitude install subversion
Baixando todos os patches
svn co http://olho.homelinux.org/puredeposito
Estrutura do repositório
O
PureDeposito tem a seguinte estrutura:
- doc
- Documentação original do puredata, contendo os patches de exemplo, para tradução
- user_patches
- Patches de puredata criados por nós para todo mundo fuçar e usar e modificar.
- software
- Programas desenvolvidos em PD ou que tem alguma relação com o PD, como o Navalha ou o GladePD?.
Acesso de escrita ao repositório
Por enquanto apenas alguns usuários tem o acesso de escrita. Futuramente está planejado adotar a estrutura de pasta
incoming, ou seja, uma pasta onde todos poderão gravar patches para avaliação dos outros.
Sugestões?
Enviar seus dados modificados
Após modificar/traduzir alguma coisa, digite:
svn commit -m "Descrição da modificação"
Faça isso com frequencia, para manter o repositório atualizado! Não deixe para depois o commit que você pode fazer agora!
Incluindo novos patches
Depois de adicionar os arquivos, faça o envio, conforme acima.
Criando sua pasta
Criando sua versão do trabalho de outra pessoa
svn copy ../pastadooutro/arquivodooutro.pd .
( modifique o arquivo... )
svn commit -m "Descrição da modificação"
Fazendo desta forma, o subversion saberá que é uma cópia, mantendo as informações antigas do arquivo.
Svn copy
Coloco aqui a explicação do Nosklo, escrita na lista do Puredeposito, de como utilizar o svn copy:
Toda vez q vc renomear ou copiar um arquivo, faça com os comandos svn
move ou svn copy.
Esses comandos mantem a cópia em si no histórico do repositório e não
criam uma nova cópia do arquivo no servidor
Por exemplo:
svn copy leiame.txt leiame2.txt
modifico o leiame2.txt e commit
no log vai ficar gravado, que o leiame2.txt veio a partir do
leiame.txt, e vai gravar só as modificações do leiame.txt para gerar o
leiame2.txt e não o arquivo inteiro.
Isso pode ser usado pra fazer tags de um diretório inteiro, como no exemplo:
svn copy navalha tags/navalha0.3
svn commit -m "criado tag para versao 0.3 do navalha"
isso signifca q mesmo no futuro qq um pode dar um svn checkout na
versao 0.3 que esta em taga/navalha0.3, mas nenhum arquivo novo foi
criado no servidor, o espaço gasto para isso é nenhum, seria só uma
tag mesmo. diferente de vc usar o cp normal do shell, que criaria
outra cópia, e o svn consideraria arquivos novos com svn add,
iniciando um novo histórico e armazenando novas cópias.
Para entender leve em consideração o fato de que o svn só armazena as
'modificações' feitas entre as versões e não o arquivo inteiro, ele
abre mesmo o arquivo e faz um diff, para gravar só o que mudou entre
uma versão e outra. isso possbilita usar svn copy para tags ou
branches.