2005-11-07 07:57:08 +03:00
|
|
|
git-cvsexportcommit(1)
|
2005-11-08 04:53:06 +03:00
|
|
|
======================
|
2005-11-07 07:57:08 +03:00
|
|
|
|
|
|
|
NAME
|
|
|
|
----
|
2007-01-19 02:53:37 +03:00
|
|
|
git-cvsexportcommit - Export a single commit to a CVS checkout
|
2005-11-07 07:57:08 +03:00
|
|
|
|
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
2007-05-24 19:06:55 +04:00
|
|
|
'git-cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
|
2005-11-07 07:57:08 +03:00
|
|
|
|
|
|
|
|
|
|
|
DESCRIPTION
|
|
|
|
-----------
|
|
|
|
Exports a commit from GIT to a CVS checkout, making it easier
|
2007-06-07 11:04:01 +04:00
|
|
|
to merge patches from a git repository into a CVS repository.
|
2005-11-07 07:57:08 +03:00
|
|
|
|
2007-06-07 11:04:01 +04:00
|
|
|
Execute it from the root of the CVS working copy. GIT_DIR must be defined.
|
2006-01-30 09:34:15 +03:00
|
|
|
See examples below.
|
2005-11-07 07:57:08 +03:00
|
|
|
|
2007-06-07 11:04:01 +04:00
|
|
|
It does its best to do the safe thing, it will check that the files are
|
|
|
|
unchanged and up to date in the CVS checkout, and it will not autocommit
|
2005-11-07 07:57:08 +03:00
|
|
|
by default.
|
|
|
|
|
|
|
|
Supports file additions, removals, and commits that affect binary files.
|
|
|
|
|
2007-05-07 09:28:34 +04:00
|
|
|
If the commit is a merge commit, you must tell git-cvsexportcommit what parent
|
2007-06-07 11:04:01 +04:00
|
|
|
should the changeset be done against.
|
2005-11-07 07:57:08 +03:00
|
|
|
|
|
|
|
OPTIONS
|
|
|
|
-------
|
|
|
|
|
|
|
|
-c::
|
|
|
|
Commit automatically if the patch applied cleanly. It will not
|
|
|
|
commit if any hunks fail to apply or there were other problems.
|
|
|
|
|
|
|
|
-p::
|
2006-07-18 06:22:49 +04:00
|
|
|
Be pedantic (paranoid) when applying patches. Invokes patch with
|
2005-11-07 07:57:08 +03:00
|
|
|
--fuzz=0
|
|
|
|
|
2006-07-18 06:22:49 +04:00
|
|
|
-a::
|
|
|
|
Add authorship information. Adds Author line, and Committer (if
|
|
|
|
different from Author) to the message.
|
|
|
|
|
2007-02-18 20:17:08 +03:00
|
|
|
-d::
|
|
|
|
Set an alternative CVSROOT to use. This corresponds to the CVS
|
|
|
|
-d parameter. Usually users will not want to set this, except
|
|
|
|
if using CVS in an asymmetric fashion.
|
|
|
|
|
2006-04-26 04:26:16 +04:00
|
|
|
-f::
|
|
|
|
Force the merge even if the files are not up to date.
|
|
|
|
|
2007-02-01 13:43:39 +03:00
|
|
|
-P::
|
|
|
|
Force the parent commit, even if it is not a direct parent.
|
|
|
|
|
2006-04-26 04:26:16 +04:00
|
|
|
-m::
|
2007-06-07 11:04:01 +04:00
|
|
|
Prepend the commit message with the provided prefix.
|
2006-04-26 04:26:16 +04:00
|
|
|
Useful for patch series and the like.
|
|
|
|
|
2007-05-24 19:06:55 +04:00
|
|
|
-u::
|
2007-08-24 04:40:08 +04:00
|
|
|
Update affected files from CVS repository before attempting export.
|
2007-05-24 19:06:55 +04:00
|
|
|
|
2005-11-07 07:57:08 +03:00
|
|
|
-v::
|
|
|
|
Verbose.
|
|
|
|
|
2006-01-30 09:34:15 +03:00
|
|
|
EXAMPLES
|
|
|
|
--------
|
|
|
|
|
|
|
|
Merge one patch into CVS::
|
|
|
|
+
|
|
|
|
------------
|
|
|
|
$ export GIT_DIR=~/project/.git
|
|
|
|
$ cd ~/project_cvs_checkout
|
|
|
|
$ git-cvsexportcommit -v <commit-sha1>
|
2007-06-07 11:04:01 +04:00
|
|
|
$ cvs commit -F .mgs <files>
|
2006-01-30 09:34:15 +03:00
|
|
|
------------
|
|
|
|
|
2007-06-15 09:20:16 +04:00
|
|
|
Merge pending patches into CVS automatically -- only if you really know what you are doing::
|
2006-01-30 09:34:15 +03:00
|
|
|
+
|
|
|
|
------------
|
|
|
|
$ export GIT_DIR=~/project/.git
|
|
|
|
$ cd ~/project_cvs_checkout
|
|
|
|
$ git-cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git-cvsexportcommit -c -p -v
|
|
|
|
------------
|
|
|
|
|
2005-11-07 07:57:08 +03:00
|
|
|
Author
|
|
|
|
------
|
|
|
|
Written by Martin Langhoff <martin@catalyst.net.nz>
|
|
|
|
|
|
|
|
Documentation
|
|
|
|
--------------
|
|
|
|
Documentation by Martin Langhoff <martin@catalyst.net.nz>
|
|
|
|
|
|
|
|
GIT
|
|
|
|
---
|
|
|
|
Part of the gitlink:git[7] suite
|