[wp-hackers] Switching from SVN
Mike Schinkel
mikeschinkel at newclarity.net
Fri Dec 10 07:23:27 UTC 2010
On Dec 10, 2010, at 1:41 AM, Otto wrote:
> On Fri, Dec 10, 2010 at 12:33 AM, Mike Schinkel
> <mikeschinkel at newclarity.net> wrote:
>> After reading this thread and especially that last comment I'm finally feeling like much less the idiot for having asked this question:
>>
>> http://wordpress.stackexchange.com/questions/990/easiest-way-to-create-a-patch-for-submission-to-wordpress-core
>
> As somebody who doesn't use an IDE, my process for creating a patch
> against core is pretty simple. I use Windows most of the time, and
> Tortoise SVN.
>
> First, I update my working copy to trunk. This is not unusual, I run
> trunk live, so I do that all the time. Right click the WP folder,
> select SVN Update.
>
> Second, I make my changes. Usual editor on Windows: TextPad.
>
> Third, I test my changes. Since I have my trunk running live on a
> local install, this is easy. Don't even have to copy stuff around.
>
> Fourth, I make the diff. Right click the WP folder, select SVN->Create
> Patch. Save the diff file somewhere (usually the same directory the wp
> install is in). I tend to give it a name based on the number of the
> ticket. Don't have to, but it helps to know what's what.
>
> Fifth, I upload the patch to the relevant ticket.
>
> Easy, really.
Thanks for the details. Still, that works for you but is a PITA for me.
I typically am working on a project, which cannot be based on trunk when discover something I'd like to offer a patch for in core. If I am not pressed for an immediate deadline I could modify core in my current project as a proof of concept and if it works I'd like to be able make a patch for core from there (and then issue a rollback since I can't deliver code to clients that depend on a patched core.) But I can't do it this way.
Instead I have to do the above and then go to another directory to pull down trunk. I have to recreate the data environment including what relevant plugins are currently installed needed for testing this issue in trunk (which sadly my development project's database already has.) That can take from 5 minutes or more than an hour, depending. Now I have to go find all my changes and reapply them to trunk. That can take 5 minutes, or longer than an hour, depending. After finally getting the idea implemented in the latest version of trunk only then can I make the patch. But since I don't work in trunk like you usually do, this is typically something that I can't devote the time to because its unknown to me how long it will take and my subsequent client deadline pressures.
I could start from trunk when I try my core but I'd still have to redevelop the data environment and either way it just makes it too much effort most of the time.
I'm not sure, but it sounds like Git/Mecurial/Bazaar/etc. would make it easier for me to provide patches of the core directly from my client projects instead of having to set up a trunk. If so it would be a huge win to enable me to contribute more patches to core.
-Mike
More information about the wp-hackers
mailing list