Enviei alguns patches para o núcleo do WordPress no Trac (um dos quais já foi usado), mas toda vez que penso em fazê-lo, estremeço porque minha configuração para fazê-lo é incrivelmente entediante.
Alguém pode detalhar as etapas necessárias para enviar um patch para o core e, em seguida, a melhor maneira de otimizar o processo para que não seja tão tedioso? Atualmente, trabalho com o Mac OS X e o PhpStorm, mas acho que um script de shell pode ser mais fácil? Ou talvez um script PHP que funcione corretamente?
Uma das questões é que não entendo completamente o que preciso começar. Eu começo com o tronco? Preciso fazer o download de uma nova cópia e adicionar / editar essa cópia com o meu código toda vez que quiser criar um patch?
Novamente, embora eu tenha feito isso trabalhando com o SVN e o patch esteja realmente fora do meu conjunto de habilidades atual, eu quero mudar isso. Espero que os especialistas em patches do WordPress possam me ajudar. Desde já, obrigado.
ATUALIZAR:
Após a resposta do @ hakre, acho que devo acrescentar mais à pergunta:
- Posso criar patches a partir da versão mais antiga ou devo usar o tronco?
- Se estou trabalhando em um projeto usando a versão lançada (3.0.1), posso modificá-lo e criar um patch para o core ou preciso fazer o download e configurar uma cópia nova e nova do tronco e fazer minhas modificações recentemente?
- Posso usar scripts de shell para codificar o login no script e apenas executá-lo para recriar tudo o que preciso e / ou criar o patch?
- E quais são as armadilhas?
Todas essas perguntas parecem ser assumidas por quem sabe como o SVN do WordPress funciona e, como tal, sempre é encoberto em qualquer discussão.
svn diff > my-patch.patch
:, me gusta!Eclipse PDT + Subclipse + X
Estou usando o Eclipse que possui integração SVN . Eu acho que o PHP Strom também o faz. Entro em um dos meus projetos de tronco, que são basicamente um checkout do repositório svn do WordPress.
Depois edito os arquivos que preciso editar. O Eclipse mostra quais são modificados, clico com o botão direito do mouse em um diretório, seleciono
Team->Create Patch
e recebo todos os arquivos alterados que posso selecionar para o diff. Então eu posso escolher entre copiar para a área de transferência ou salvar em disco. Salvei todos os patches criados com o número do ticket em um diretório que tenho no meu disco rígido.Então eu vou para o navegador e carrego o patch.
Eu também poderia fazer isso com uma integração do MyLyn Trac , que é ainda mais confortável, mas você precisa do XML-RPC diretamente no trac e, portanto, precisa de um administrador do trac para entrar em contato. Funciona muito bem, mas eu não o tenho configurado em todos os projetos e o uso principalmente quando faço resumos de tickets.
Então, realmente, confira o Eclipse, se quiser. É enorme e lento, então você precisa de um computador grande. Nos pequenos, fiz boas experiências com o Fedora Linux. O Eclipse funciona bem nele. Eu sei que você é um fã do PHP Storm, mas, bem, eu realmente gosto do meu Eclipse e ele vem com muitas extensões que realmente agitam. Mesmo para PHP :). Mas o PHP Storm também deve fazer o checkout / patch também.
WordPress Eclipse 1x1
Ah e eu tenho uma ferramenta no meu sistema operacional que salva todos os diretórios que usei. Para que eu possa salvar os patches e enviar os arquivos rapidamente, porque eles sempre estão no mesmo diretório que eu tenho na lista recente.
Exemplo de integração: Sniffer de código PHP, Eclipse e WordPress
fonte
Eu mesmo uso esses:
https://core.trac.wordpress.org/ticket/9724
Embora seja obviamente mais no departamento de aplicação de patches. ;-)
fonte