É este o passo-a-passo correto e organização para criar um repo SVN com vários projetos e fornecedores?

StackOverflow https://stackoverflow.com/questions/259600

  •  06-07-2019
  •  | 
  •  

Pergunta

Eu li um pouco do feijão vermelho Software SVN Livro, e algumas das perguntas aqui no SO, mas eu quero ter certeza que eu vou sobre isso da maneira certa na primeira vez passo-a -Step antes de começar a usá-lo. É este correto?

  1. Instale SVN.
  2. Criar repositório SVN em / usr / / svn local. Diretório estrutura esta aparência:

    -- conf
    -- db
    -- format
    -- hooks
    -- locks
    -- README.txt
    
  3. Crie pastas através de linha de comando para a organização repositório (incluindo projetos e fornecedores).

    -- conf
    -- db
    -- format
    -- hooks
    -- locks
    -- projects
       -- project_name
          -- vendor
          -- trunk
          -- branches
          -- tags
       -- project_name
          -- vendor
          -- trunk
          -- branches
          -- tags
    -- README.txt
    
  4. código de fornecedor Caixa para a pasta fornecedor sob o nome de projeto correto.

  5. código Export fornecedor no tronco sob o nome de projeto correto (sem merge necessário, como eu não tenho arquivos tronco do projeto até o momento).
  6. Criar usuários / permissões em / svnroot / conf / passwd e /svnroot/conf/svnserve.conf.
  7. Certifique-se de que o svnserve está em execução, e em meu cliente SVN local (TortoiseSVN), check-out do tronco para o projeto que eu preciso.

Eu não preciso para servir este por URL público, por isso não estou a configuração para o Apache. O servidor não está em nossa rede, mas é um CentOS dedicados caixa alugamos. Obrigado por todos os pensamentos e conselhos.

EDIT:

Acho que estou confuso porque eu não tenho o código ou um projeto para começar, por isso estou começando do zero a partir do código do fornecedor. Eu preciso criar uma estrutura de diretórios em algum lugar no servidor que inclui o meu project_name w / vendedor, tronco, ramos e rótulos subpastas, importação que no meu repo, e depois importar o código do fornecedor para a pasta de fornecedor? A ideia é que posso obter atualizações do fornecedor, e em seguida, mesclar essas atualizações com quaisquer alterações que fiz ao meu tronco.

Foi útil?

Solução

Crie pastas através de linha de comando para a organização repositório (incluindo projetos e fornecedores).

Você quer dizer criar a estrutura do repositório, fazendo diretórios dentro do diretório subversão intallation? Isso é muito errado.

Você tem que criar as pastas necessárias através do comando svn mkdir e não pelo sistema de arquivos.

Em /usr/local/svn você tem a implementação física do repositório Subversion, e você deve acessar somente através de um cliente, e nunca tocá-lo "à mão".

Por exemplo, usando o esquema file: // URL

svn mkdir file:///usr/local/svn/projects -m "Parent dir for projects created"

Outras dicas

Você parece ter principalmente a idéia certa, mas sua terminologia é um pouco errado. Isso realmente vai confundir as pessoas SVN, desde que você está usando palavras que têm significados específicos no contexto do SVN. Para expandir o que Davide disse:

2) criar o seu repositório, fazendo algo parecido svnadmin create /usr/local/svn.

3) criar suas pastas. Você não precisa (ou quer) as partes da sua lista que não estão abaixo projects/. Esses outros diretórios são o SVN usa para manter o controle de revisões, eles não estão realmente no repositório. Se você criar um em algum lugar hierarquia de diretórios em seu sistema que contém a sub project_name/, você pode então executar svn import nele tantas vezes quanto quiser, uma vez para cada projeto (dar um nome diferente para o destino de cada vez). Que irá criar a estrutura de diretório.

4) Em vez de "checkout", eu acho que você quer dizer quer "importar" ou "check-in" (geralmente chamado de "comprometer" em SVN linguagem, mas "check-in" será entendido). Importando irá adicionar os arquivos do fornecedor para o repositório. Caixa significa "criar uma cópia local deste diretório versionado para mim trabalhar com" conhecida como uma cópia de trabalho. Todo desenvolvedor em sua equipe deve ter a sua própria cópia de trabalho. Depois de um desenvolvedor faz alterações em sua cópia de trabalho, então eles svn commit-los que envia as alterações para o repositório. Os outros desenvolvedores na equipe será executado svn update para obter as alterações do repositório para suas próprias cópias de trabalho.

5) Eu não li o livro SVN ultimamente, mas eu acho que instrui a copiar a versão do ramo de fornecedor para o tronco, e não exportá-lo. Exportando no SVN termos meios para un-versão da árvore de diretórios, que não é claramente o que você quer.

Você pode encontrar as coisas mais fáceis se você fizer as etapas 6 e 7 logo após o passo 2, desde então você pode usar o protocolo svn:// para acessar o repositório para as etapas restantes em vez de file:// como sugerido por Davide, que só funciona no local, máquina.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top