Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

git-cvsexportcommit(1) [xfree86 man page]


git-cvsexportcommit - Export a single commit to a CVS checkout SYNOPSIS
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:$ 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 git(1) suite Git 11/24/2012 GIT-CVSEXPORTCOMMIT(1)

Check Out this Related Man Page

GIT-REVERT(1)							    Git Manual							     GIT-REVERT(1)

git-revert - Revert an existing commit SYNOPSIS
git revert [--edit | --no-edit] [-n] [-m parent-number] [-s] <commit> DESCRIPTION
Given one existing commit, revert the change the patch introduces, and record a new commit that records it. This requires your working tree to be clean (no modifications from the HEAD commit). Note: git revert is used to record a new commit to reverse the effect of an earlier commit (often a faulty one). If you want to throw away all uncommitted changes in your working directory, you should see git-reset(1), particularly the --hard option. If you want to extract specific files as they were in another commit, you should see git-checkout(1), specifically the git checkout <commit> -- <filename> syntax. Take care with these alternatives as both will discard uncommitted changes in your working directory. OPTIONS
<commit> Commit to revert. For a more complete list of ways to spell commit names, see "SPECIFYING REVISIONS" section in git-rev-parse(1). -e, --edit With this option, git revert will let you edit the commit message prior to committing the revert. This is the default if you run the command from a terminal. -m parent-number, --mainline parent-number Usually you cannot revert a merge because you do not know which side of the merge should be considered the mainline. This option specifies the parent number (starting from 1) of the mainline and allows revert to reverse the change relative to the specified parent. Reverting a merge commit declares that you will never want the tree changes brought in by the merge. As a result, later merges will only bring in tree changes introduced by commits that are not ancestors of the previously reverted merge. This may or may not be what you want. See the revert-a-faulty-merge How-To[1] for more details. --no-edit With this option, git revert will not start the commit message editor. -n, --no-commit Usually the command automatically creates a commit with a commit log message stating which commit was reverted. This flag applies the change necessary to revert the named commit to your working tree and the index, but does not make the commit. In addition, when this option is used, your index does not have to match the HEAD commit. The revert is done against the beginning state of your index. This is useful when reverting more than one commits' effect to your index in a row. -s, --signoff Add Signed-off-by line at the end of the commit message. AUTHOR
Written by Junio C Hamano <[2]> DOCUMENTATION
Documentation by Junio C Hamano and the git-list <[3]>. GIT
Part of the git(1) suite NOTES
1. revert-a-faulty-merge How-To file:///usr/share/doc/git-doc/howto/revert-a-faulty-merge.txt 2. 3. Git 1.7.1 07/05/2010 GIT-REVERT(1)

Featured Tech Videos