|  | git-cvsexportcommit(1) | 
|  | ====================== | 
|  |  | 
|  | NAME | 
|  | ---- | 
|  | git-cvsexportcommit - Export a single commit to a CVS checkout | 
|  |  | 
|  |  | 
|  | SYNOPSIS | 
|  | -------- | 
|  | 'git-cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot] [-w cvsworkdir] [-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. | 
|  |  | 
|  | Specify the name of a CVS checkout using the -w switch or execute it | 
|  | from the root of the CVS working copy. In the latter case 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-cvsexportcommit 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. | 
|  |  | 
|  | -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. | 
|  |  | 
|  | -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. | 
|  |  | 
|  | -u:: | 
|  | Update affected files from CVS repository before attempting export. | 
|  |  | 
|  | -w:: | 
|  | Specify the location of the CVS checkout to use for the export. This | 
|  | option does not require GIT_DIR to be set before execution if the | 
|  | current directory is within a git repository. | 
|  |  | 
|  | -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 .msg <files> | 
|  | ------------ | 
|  |  | 
|  | Merge one patch into CVS (-c and -w options). The working directory is within the Git Repo:: | 
|  | + | 
|  | ------------ | 
|  | $ git-cvsexportcommit -v -c -w ~/project_cvs_checkout <commit-sha1> | 
|  | ------------ | 
|  |  | 
|  | 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> and others. | 
|  |  | 
|  | Documentation | 
|  | -------------- | 
|  | Documentation by Martin Langhoff <martin@catalyst.net.nz> and others. | 
|  |  | 
|  | GIT | 
|  | --- | 
|  | Part of the linkgit:git[7] suite |