]>
Commit | Line | Data |
---|---|---|
5e0306ad | 1 | git-cvsexportcommit(1) |
79f6ac77 | 2 | ====================== |
5e0306ad ML |
3 | |
4 | NAME | |
5 | ---- | |
c3f0baac | 6 | git-cvsexportcommit - Export a single commit to a CVS checkout |
5e0306ad ML |
7 | |
8 | ||
9 | SYNOPSIS | |
10 | -------- | |
e5d80641 | 11 | 'git-cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID |
5e0306ad ML |
12 | |
13 | ||
14 | DESCRIPTION | |
15 | ----------- | |
16 | Exports a commit from GIT to a CVS checkout, making it easier | |
a6080a0a | 17 | to merge patches from a git repository into a CVS repository. |
5e0306ad | 18 | |
a6080a0a | 19 | Execute it from the root of the CVS working copy. GIT_DIR must be defined. |
1506fc34 | 20 | See examples below. |
5e0306ad | 21 | |
a6080a0a JH |
22 | It does its best to do the safe thing, it will check that the files are |
23 | unchanged and up to date in the CVS checkout, and it will not autocommit | |
5e0306ad ML |
24 | by default. |
25 | ||
26 | Supports file additions, removals, and commits that affect binary files. | |
27 | ||
604d7a1a | 28 | If the commit is a merge commit, you must tell git-cvsexportcommit what parent |
a6080a0a | 29 | should the changeset be done against. |
5e0306ad ML |
30 | |
31 | OPTIONS | |
32 | ------- | |
33 | ||
34 | -c:: | |
35 | Commit automatically if the patch applied cleanly. It will not | |
36 | commit if any hunks fail to apply or there were other problems. | |
37 | ||
38 | -p:: | |
1b91abe3 | 39 | Be pedantic (paranoid) when applying patches. Invokes patch with |
5e0306ad ML |
40 | --fuzz=0 |
41 | ||
1b91abe3 ML |
42 | -a:: |
43 | Add authorship information. Adds Author line, and Committer (if | |
44 | different from Author) to the message. | |
45 | ||
4a6b9bb6 SS |
46 | -d:: |
47 | Set an alternative CVSROOT to use. This corresponds to the CVS | |
48 | -d parameter. Usually users will not want to set this, except | |
49 | if using CVS in an asymmetric fashion. | |
50 | ||
992793c8 ML |
51 | -f:: |
52 | Force the merge even if the files are not up to date. | |
53 | ||
ca28370a SS |
54 | -P:: |
55 | Force the parent commit, even if it is not a direct parent. | |
56 | ||
992793c8 | 57 | -m:: |
a6080a0a | 58 | Prepend the commit message with the provided prefix. |
992793c8 ML |
59 | Useful for patch series and the like. |
60 | ||
e5d80641 | 61 | -u:: |
db218723 | 62 | Update affected files from CVS repository before attempting export. |
e5d80641 | 63 | |
5e0306ad ML |
64 | -v:: |
65 | Verbose. | |
66 | ||
1506fc34 ML |
67 | EXAMPLES |
68 | -------- | |
69 | ||
70 | Merge one patch into CVS:: | |
71 | + | |
72 | ------------ | |
73 | $ export GIT_DIR=~/project/.git | |
74 | $ cd ~/project_cvs_checkout | |
75 | $ git-cvsexportcommit -v <commit-sha1> | |
562e35c3 | 76 | $ cvs commit -F .msg <files> |
1506fc34 ML |
77 | ------------ |
78 | ||
4c7100a9 | 79 | Merge pending patches into CVS automatically -- only if you really know what you are doing:: |
1506fc34 ML |
80 | + |
81 | ------------ | |
82 | $ export GIT_DIR=~/project/.git | |
83 | $ cd ~/project_cvs_checkout | |
84 | $ git-cherry cvshead myhead | sed -n 's/^+ //p' | xargs -l1 git-cvsexportcommit -c -p -v | |
85 | ------------ | |
86 | ||
5e0306ad ML |
87 | Author |
88 | ------ | |
89 | Written by Martin Langhoff <martin@catalyst.net.nz> | |
90 | ||
91 | Documentation | |
92 | -------------- | |
93 | Documentation by Martin Langhoff <martin@catalyst.net.nz> | |
94 | ||
95 | GIT | |
96 | --- | |
97 | Part of the gitlink:git[7] suite |