118 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| git-cvsexportcommit(1)
 | |
| ======================
 | |
| 
 | |
| NAME
 | |
| ----
 | |
| git-cvsexportcommit - Export a single commit to a CVS checkout
 | |
| 
 | |
| 
 | |
| SYNOPSIS
 | |
| --------
 | |
| [verse]
 | |
| 'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]
 | |
| 	[-w cvsworkdir] [-W] [-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 the changeset should 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.
 | |
| 
 | |
| -k::
 | |
| 	Reverse CVS keyword expansion (e.g. $Revision: 1.2.3.4$
 | |
| 	becomes $Revision$) in working CVS checkout before applying patch.
 | |
| 
 | |
| -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.  The default is the
 | |
| 	value of 'cvsexportcommit.cvsdir'.
 | |
| 
 | |
| -W::
 | |
| 	Tell cvsexportcommit that the current working directory is not only
 | |
| 	a Git checkout, but also the CVS checkout.  Therefore, Git will
 | |
| 	reset the working directory to the parent commit before proceeding.
 | |
| 
 | |
| -v::
 | |
| 	Verbose.
 | |
| 
 | |
| CONFIGURATION
 | |
| -------------
 | |
| cvsexportcommit.cvsdir::
 | |
| 	The default location of the CVS checkout to use for the export.
 | |
| 
 | |
| 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
 | |
| ------------
 | |
| 
 | |
| GIT
 | |
| ---
 | |
| Part of the linkgit:git[1] suite
 |