[Python-Dev] devguide: Cover how to (un-)apply a patch.

skip at pobox.com skip at pobox.com
Wed Jan 19 17:36:04 CET 2011

    >> What he said, only bolded and underlined.

    Antoine> I'm not sure what the issue is. Is there something, concretely,
    Antoine> that needs to be fixed?

Strictly speaking, nothing needs to be "fixed" because nothing is broken.
Rephrasing my earlier messages:

    1. Being a sophisticated Python programmer (and thus being a potential
       core developer) does not necessarily equate to being a sophisticated
       user of (especially distributed) version control systems.  I have
       been programming in Python for about 15 years and have made
       contributions to the core off-and-on for about 10 years.  I have
       never, not even once, been tempted to learn about or use svnmerge.
       Even considering the more mundane subcommands of the normal svn and
       hg commands (not to mention cvs, bzr, git, darcs, etc) there are
       plenty of different ways to structure the workflow, not all of which
       will make sense for each of those vcs's, nor will they all make sense
       to all potential users.

    2. There is more than one way to skin many of the cats involved in
       version control.  My preference to use "vcs diff | patch -p0 -R" or
       "patch -p0 -R < some-email" in preference to "vcs revert <some
       flags>" is just one example.  I'm sure I will be able to master "svn
       revert" and "hg revert" if necessary, but that knowledge won't
       transfer at all to CVS (no revert command) and won't transfer 100% to
       other vcs's because their revert commands will have semantic
       differences or use different command line flags to dictate the
       specifics of the action to perform.

    3. Not everyone will use the command line (strange as that may seem
       coming from a decades-long Unix user).  Many Windows users (and
       probably some Mac users) will have GUIs like TortoiseHg.  Smart/lazy/
       memory-challenged Emacs and vim users will have version control
       commands built into their editors precisely to paper over the arcane
       differences which exist between vcs's even for common operations.


More information about the Python-Dev mailing list