Pergunta

eu executar o meu blog usando o Wordpress e muito recentemente tornou-se um grande crente em SCM. Eu realmente quero colocar meu site em subversão (que é o que eu estou usando agora, talvez git virá mais tarde), mas eu não posso pensar da maneira correta de fazê-lo ainda. Basicamente, meu repositório está configurado atualmente com um diretório 'aplicação' e um diretório de 'recursos', com a implementação segurando o que acabará por ser publicado no site ao vivo. Eu quero ser capaz de visualizar o meu site localmente, sem ter que fazer o upload para o servidor por razões óbvias. No entanto, para fazer isso, descobri que eu precisava para realmente instalar o Wordpress localmente (e não apenas copiar o baixo site remoto para minha caixa local). Isto foi dito para mim lá no Wordpress.org.

Isso traz o problema de ser capaz de usar SCM com a instalação porque eu preciso atualizar meu site local de vez em quando, mas isso gera inconsistências com a subversão, porque não pode acompanhar o que está acontecendo, porque um sistema externo é Messing com a sua estrutura de repositório. Isso só não vai funcionar.

A minha inclinação inicial é tentar apenas SCM minhas informações tema como este é realmente a única coisa que eu ‘próprio’, enquanto que tudo o resto é realmente apenas parte da minha plataforma (não é diferente do que o Apache ou PHP, realmente). No entanto, que é onde meus breaks compreensão para baixo. Como posso seletivamente SCM apenas parte do que estrutura de diretórios, e como eu posso manter a configuração do Wordpress que eu estou em?

De qualquer forma, tenho certeza que outras pessoas têm abordado este e a solução é provavelmente aplicável a muitos aplicativos semelhantes para Wordpress (Drupal, phpBB, phpMyAdmin, etc.). Então, como você faz isso?

Foi útil?

Solução

Na verdade não é tão difícil de fazer, mas vou dividi-la em algumas sugestões aqui. O que você está descrevendo é mais ou menos um diretório "vendor queda". Este é basicamente onde você manter o código no SVN, mas substituir o conteúdo com o material mais recente que ela sai.

O que você deve começar com é um diretório vazio. Configurar um repositório SVN, e depois fazer um check-out SVN para o diretório vazio (ele ainda estará vazia, exceto que ele vai ter um diretório .svn escondido adicionado). Em seguida, instalar o WordPress aqui normalmente, e em seguida, adicione seus arquivos para svn. Você pode provavelmente apenas "SVN adicionar *" mas tenha cuidado, e remover qualquer coisa que você não quer que seja de versão (diretórios uploads / temp / de cache, se aplicável). Você também pode usar a propriedade svn: ignore para dizer a ele para ignorar determinados diretórios ou tipos de arquivos, se você gostaria. Execute "status svn" para mostrar o que vai ser o check-in, etc, e uma vez que tudo é bom, cometê-lo (SVN commit) e começar a trabalhar a partir daí. Agora você tem uma base de instalação do wordpress no SVN.

Como você trabalhar e fazer alterações, cometê-los.

Quando chega a hora de atualizar, basta substituir wordpress por cima do que você tem. Certifique-se de quando você substitui diretórios, você substituir o conteúdo, e não a todo o diretório em si. Você não quer perder a pasta .svn escondido em cada pasta porque é isso que vai mexer subversão up. Fazer uma estatística svn e / ou svn diff para descobrir o que mudou, se alguma coisa, e principalmente o que está recém-adicionado. Neste ponto, você pode cometer novamente.

Para implantar em seu local de produção, você pode fazer uma exportação svn, ou fazer uma checagem normal para o diretório web. Se você fizer um check-out, não se esqueça de atualizar apenas quando estiver pronto para implantar.

Outras dicas

Este é o método que eu estou testando. Leva algum tempo para configuração, mas você deve então (em teoria) tem um futuro à prova de instalar:

Instalando WordPress O caminho certo

Também olhar para svn: externos para puxar no plugin de atualização:

Use svn: externos para instalar o WordPress plugins

Eu acho que a parte atualização pode até ser um pouco mais fácil do que isso; Eu faço isso com a versão mais atual de ambos 2.5 e 2.6, bem como sangramento de ponta revisão tronco de WP.

Desde Wordpress oferece todas as suas coisas como repositórios de subversão, recebendo o rev atual de uma tag estável é tão fácil como fazer o blog diretório e, em seguida,

# svn co http://svn.automattic.com/wordpress/tags/2.6.2/ (replace the current rev here for the first check out).

Quando uma atualização está disponível, basta navegar para o seu blog diretório e executar

#svn sw http://svn.automattic.com/wordpress/tags/2.6.3/ (or whatever wordpress rev you're updating to)

Em seguida, liberando a seu local de produção é apenas uma exportação, como gregmac menciona No entanto, eu não acho que isso responde sua pergunta real, que eu interpreto como "Como posso manter meu material personalizado em SCM ao ser capaz de atualizar Wordpress". Seu instainct sobre o que os diretórios para aderência é muito bonito no alvo (coisas do seu próprio blog pessoal - temas, pplugins - estará em wp-content, então você só deve colocar isso em subversão), mas eu sou o suficiente para não acostumado com a subversão para dizer-lhe como colocar o diretório em seu próprio repositório, enquanto continuam sendo capazes de confiar em repo do Wordpress para upgrades. Meu "SCM" para esses arquivos no meu site é uma cópia off-servidor do diretório wp-content.

Talvez de resposta que do ponto de vista gregmac funciona melhor para você.

A minha inclinação inicial é tentar apenas SCM minhas informações tema como este é realmente a única coisa que eu ‘próprio’, enquanto que tudo o resto é realmente apenas parte da minha plataforma (não é diferente do que o Apache ou PHP, realmente). No entanto, que é onde meus breaks compreensão para baixo. Como posso seletivamente SCM apenas parte do que estrutura de diretórios, e como eu posso manter a configuração do Wordpress que eu estou em?

Isso é exatamente como eu versão controlar o meu blog. Descobri que ele funciona muito bem. Geralmente, se você está editando arquivos WordPress', você está fazendo errado e vai estar em sofrimento, quando é hora de atualizar.

Para simplificar isso, eu uso TortoiseSVN. I navegou para o meu / wp-content / themes / diretório no Windows Explorer, certo clicou diretório do meu tema personalizado, e escolheu import no menu de contexto. Depois de importar todos os arquivos existentes, realizei um Checkout na esse diretório e tudo foi definido.

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