ca28370a35
This can be used to compress multiple changesets into one, for example like git cvsexportcommit -P cvshead mybranch without having to do so in git first. Signed-off-by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de> Signed-off-by: Junio C Hamano <junkio@cox.net>
91 lines
2.0 KiB
Plaintext
91 lines
2.0 KiB
Plaintext
git-cvsexportcommit(1)
|
|
======================
|
|
|
|
NAME
|
|
----
|
|
git-cvsexportcommit - Export a single commit to a CVS checkout
|
|
|
|
|
|
SYNOPSIS
|
|
--------
|
|
'git-cvsexportcommit' [-h] [-v] [-c] [-P] [-p] [-a] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
|
|
|
|
|
|
DESCRIPTION
|
|
-----------
|
|
Exports a commit from GIT to a CVS checkout, making it easier
|
|
to merge patches from a git repository into a CVS repository.
|
|
|
|
Execute it from the root of the CVS working copy. GIT_DIR must be defined.
|
|
See examples below.
|
|
|
|
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
|
|
by default.
|
|
|
|
Supports file additions, removals, and commits that affect binary files.
|
|
|
|
If the commit is a merge commit, you must tell git-cvsapplycommit what parent
|
|
should the changeset be done against.
|
|
|
|
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::
|
|
Be pedantic (paranoid) when applying patches. Invokes patch with
|
|
--fuzz=0
|
|
|
|
-a::
|
|
Add authorship information. Adds Author line, and Committer (if
|
|
different from Author) to the message.
|
|
|
|
-f::
|
|
Force the merge even if the files are not up to date.
|
|
|
|
-P::
|
|
Force the parent commit, even if it is not a direct parent.
|
|
|
|
-m::
|
|
Prepend the commit message with the provided prefix.
|
|
Useful for patch series and the like.
|
|
|
|
-v::
|
|
Verbose.
|
|
|
|
EXAMPLES
|
|
--------
|
|
|
|
Merge one patch into CVS::
|
|
+
|
|
------------
|
|
$ export GIT_DIR=~/project/.git
|
|
$ cd ~/project_cvs_checkout
|
|
$ git-cvsexportcommit -v <commit-sha1>
|
|
$ cvs commit -F .mgs <files>
|
|
------------
|
|
|
|
Merge pending patches into CVS automatically -- only if you really know what you are doing ::
|
|
+
|
|
------------
|
|
$ export GIT_DIR=~/project/.git
|
|
$ cd ~/project_cvs_checkout
|
|
$ git-cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git-cvsexportcommit -c -p -v
|
|
------------
|
|
|
|
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
|
|
|