]> git.ipfire.org Git - thirdparty/git.git/blame - Documentation/git-cvsexportcommit.txt
documentation: convert "diffcore" and "repository-layout" to man pages
[thirdparty/git.git] / Documentation / git-cvsexportcommit.txt
CommitLineData
5e0306ad 1git-cvsexportcommit(1)
79f6ac77 2======================
5e0306ad
ML
3
4NAME
5----
c3f0baac 6git-cvsexportcommit - Export a single commit to a CVS checkout
5e0306ad
ML
7
8
9SYNOPSIS
10--------
d775734c 11'git-cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot] [-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
5e0306ad
ML
12
13
14DESCRIPTION
15-----------
16Exports a commit from GIT to a CVS checkout, making it easier
a6080a0a 17to merge patches from a git repository into a CVS repository.
5e0306ad 18
648ee550
RR
19Specify the name of a CVS checkout using the -w switch or execute it
20from the root of the CVS working copy. In the latter case GIT_DIR must
21be defined. See examples below.
5e0306ad 22
a6080a0a
JH
23It does its best to do the safe thing, it will check that the files are
24unchanged and up to date in the CVS checkout, and it will not autocommit
5e0306ad
ML
25by default.
26
27Supports file additions, removals, and commits that affect binary files.
28
604d7a1a 29If the commit is a merge commit, you must tell git-cvsexportcommit what parent
a6080a0a 30should the changeset be done against.
5e0306ad
ML
31
32OPTIONS
33-------
34
35-c::
36 Commit automatically if the patch applied cleanly. It will not
37 commit if any hunks fail to apply or there were other problems.
38
39-p::
1b91abe3 40 Be pedantic (paranoid) when applying patches. Invokes patch with
5e0306ad
ML
41 --fuzz=0
42
1b91abe3
ML
43-a::
44 Add authorship information. Adds Author line, and Committer (if
45 different from Author) to the message.
46
4a6b9bb6
SS
47-d::
48 Set an alternative CVSROOT to use. This corresponds to the CVS
49 -d parameter. Usually users will not want to set this, except
50 if using CVS in an asymmetric fashion.
51
992793c8
ML
52-f::
53 Force the merge even if the files are not up to date.
54
ca28370a
SS
55-P::
56 Force the parent commit, even if it is not a direct parent.
57
992793c8 58-m::
a6080a0a 59 Prepend the commit message with the provided prefix.
992793c8
ML
60 Useful for patch series and the like.
61
e5d80641 62-u::
db218723 63 Update affected files from CVS repository before attempting export.
e5d80641 64
648ee550
RR
65-w::
66 Specify the location of the CVS checkout to use for the export. This
67 option does not require GIT_DIR to be set before execution if the
325abb7b
TP
68 current directory is within a git repository. The default is the
69 value of 'cvsexportcommit.cvsdir'.
648ee550 70
d775734c
JS
71-W::
72 Tell cvsexportcommit that the current working directory is not only
73 a Git checkout, but also the CVS checkout. Therefore, Git will
74 reset the working directory to the parent commit before proceeding.
75
5e0306ad
ML
76-v::
77 Verbose.
78
325abb7b
TP
79CONFIGURATION
80-------------
81cvsexportcommit.cvsdir::
82 The default location of the CVS checkout to use for the export.
83
1506fc34
ML
84EXAMPLES
85--------
86
87Merge one patch into CVS::
88+
89------------
90$ export GIT_DIR=~/project/.git
91$ cd ~/project_cvs_checkout
92$ git-cvsexportcommit -v <commit-sha1>
562e35c3 93$ cvs commit -F .msg <files>
1506fc34
ML
94------------
95
648ee550
RR
96Merge one patch into CVS (-c and -w options). The working directory is within the Git Repo::
97+
98------------
99 $ git-cvsexportcommit -v -c -w ~/project_cvs_checkout <commit-sha1>
100------------
101
4c7100a9 102Merge pending patches into CVS automatically -- only if you really know what you are doing::
1506fc34
ML
103+
104------------
105$ export GIT_DIR=~/project/.git
106$ cd ~/project_cvs_checkout
107$ git-cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git-cvsexportcommit -c -p -v
108------------
109
5e0306ad
ML
110Author
111------
648ee550 112Written by Martin Langhoff <martin@catalyst.net.nz> and others.
5e0306ad
ML
113
114Documentation
115--------------
648ee550 116Documentation by Martin Langhoff <martin@catalyst.net.nz> and others.
5e0306ad
ML
117
118GIT
119---
5162e697 120Part of the linkgit:git[7] suite