it-swarm-pt.tech

Como melhor configuração para o desenvolvimento de uma equipe bi-costeira de duas pessoas?

Estou trabalhando com outro membro da equipe e eles residem em um estado diferente dos EUA. Estamos trabalhando para converter um site de comércio eletrônico estático existente em um site do Wordpress.

Eu quero ter uma instalação de DEV do Wordpress para que ambos possam acessá-lo facilmente. Eu vou fazer a maioria da codificação. Ele ajudará com alguns HTML/CSS e muitos trabalhos relacionados a dados. Insira manualmente os itens ou calcule algum método de importação.

Aqui estão as opções que eu pensei e faz sentido fazer a opção 2.

Opção 1

  • Instale o Wordpress no meu laptop
  • Instale o DB no meu laptop
  • Configurar meu roteador para permitir solicitações HTTP de entrada e redirecioná-las para o meu laptop
  • Quando queremos implantar no PROD, siga as etapas para mover o código para o servidor, despejar o banco de dados e importar para o banco de dados no servidor.

A desvantagem disso é que, se eu desligar meu laptop ou se algo der errado com meu modem a cabo, meu parceiro não poderá acessar o Wordpress.

Opção 2

  • Instale o Wordpress no servidor no domínio atual em um subdiretório, ex: domain.com/wordpress
  • Instalar o DB no servidor
  • Senha protege o diretório para parar alguém ou algum bot que tenta entrar no diretório
  • Quando queremos implantar, atualize index.php

Existem outras opções que também podem funcionar?

Controle de Versão

Eu também precisaria de controle de versão. Eu poderia colocar a instalação no SVN.

Como as pessoas controlam os bancos de dados com o código. Idealmente, os dois devem estar em sincronia.

4
milesmeow

Eu acho que você deveria ir com a opção # 3 ; qualquer uma das duas outras opções levará a mágoa na minha experiência. Você terminará de sobrescrever as alterações e outros problemas de cada um.

Opção 3

Ambos configuram ambientes de desenvolvimento local e você usa um repositório Subversion para manter as coisas em sincronia. Eu uso uma conta gratuita em Unfuddle com lhe dá dois logins e repositórios do Subversion, assim como um sistema de tickets e um rastreamento de tarefas e marcos. Unfuddle funciona bem para mim, mas é claro que existem muitas outras opções, Unfuddle é apenas o que eu sei que funciona bem para mim.

Quanto ao banco de dados , é muito difícil gerenciar bancos de dados no controle de origem. O que você realmente precisa fazer é escrever scripts que reconstruam seu banco de dados a partir do zero e, em seguida, versioná-los. Ironicamente eu estou trabalhando exatamente isso para amanhã e eu fiz uma pergunta aqui na esperança de conseguir alguém para me ajudar, mas em vez disso parece que estou fazendo tudo sozinho, então estou documentando o que estou sendo feito em uma resposta. Você pode ler sobre isso aqui:

Enquanto a pergunta/resposta acima fala sobre a inicialização de um novo banco de dados usando aspectos padrão, você poderia fazer o mesmo com os dados existentes, seria apenas mais trabalho.

Até agora, em meu desenvolvimento, sempre fui capaz de simplesmente fazer uma atualização de empilhadeira do banco de dados mas estou chegando ao ponto de precisar gerenciar os dados existentes. Então, parece que com o tempo eu estarei construindo ferramentas para exportar dados para scripts e/ou arquivos onde eu possa facilmente fundir novos trabalhos com dados atuais. Parece que você precisa do mesmo. Espero que outros apareçam e todos nós possamos lidar com uma parte deste problema; como se costuma dizer: "Muitas mãos contribuem para o trabalho leve."

Infelizmente, minha resposta não é simples em relação ao banco de dados, mas pelo que sei, isso sempre foi um problema para a implantação de sistemas e scripts relacionados ao banco de dados que você pode testar e enviar ao controle de versão. .

6
MikeSchinkel

Eu iria para a Opção 2, exceto que eu não acho que simplesmente lançar o desenvolvimento para produção seja uma boa ideia.

Mapeie algo como beta.domain.com (se puder) com um banco de dados separado e trabalhe com coisas lá. Quando terminar, transfira arquivos e banco de dados para o site de produção.

2
Rarst

Você está procurando por encenar basicamente. Isso não é algo com o qual o Wordpress é muito bom, mas como é o PHP e o MySQL, existem algumas ferramentas disponíveis ao lado do Wordpress que podem ajudá-lo:

https://stackoverflow.com/questions/432162/does-anybody-have-a-development-staging-deploying-workflow-with-php-mysql

A encenação basicamente significa o que Mike já descreveu, mas mostra um pouco de açúcar no topo. Eu recomendo fortemente algo como um sistema de compilação para executar coisas antes do lançamento. Especialmente com aplicativos baseados em Wordpress, caso contrário, espere muito trabalho manual.

Quanto mais cedo você começar a automatizar coisas (isso é algo que eu preciso lembrar a mim mesmo com bastante frequência), mais rápido você pode decolar.

1
hakre

Definitivamente a opção 2.

apenas um Word no controle de origem, o GIT não seria mais útil com o melhor manuseio de ramificações?

0
Mild Fuzz