commit-patch
commit patches to Darcs, Git, CVS, or Mercurial repositories
Jim Radford and I wrote a neat little utility that lets you check in select portions of a file into Darcs, Git, CVS, or Mercurial. It comes as a command line app and also and emacs interface.
See my blog entry about commit-patch for some detailed information on why you might want to use commit-patch.
The current version is 2.1: Download (17K)
The darcs development repository can be downloaded with:
darcs get http://porkrind.org/commit-patch
Prerequisites
commit-patch relies on several programs to get the job done:
and, of course, one of:commit-patch is known to run on Linux and Mac OS X. It is perl, so ideally it will run anywhere, but we have never tested in other environments, most notably Windows. Use at your own risk.
Instructions
commit-patch: See the man page.
commit-patch-buffer.el is an emacs interface to commit-patch. It allows you to just hit C-c C-c in any patch buffer to apply and commit only the changes indicated by the patch, regardless of the changes in your working directory.
One method of working with commit-patch-buffer is to just M-x vc-diff a file then kill, split or edit the resulting hunks and to then hit C-c C-c to commit the patch. The other is to use PCL cvs mode to tag many files and then to diff them into a buffer which can again be edited and committed.
Older versions
The older bash version that only supports CVS can be found here: http://blackbean.org/cvs-commit-patch/
Authors
- David Caldwell
- Jim Radford
- Jim Radford
Copyright And License
Copyright © 2003-2008 by David Caldwell and Jim Radford.commit-patch is distributed under the GNU General Public License. See the COPYING file for more details.