annotate DOCS/tech/svn-howto.txt @ 23705:7c04f822ae6e

Remove empty strlcat and strlcpy files
author reimar
date Fri, 06 Jul 2007 08:58:37 +0000
parents 702085652768
children 05608cdd13f4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
1
18660
7548a6a100da CVS --> Subversion
diego
parents: 18136
diff changeset
2 About Subversion write access:
7548a6a100da CVS --> Subversion
diego
parents: 18136
diff changeset
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
4
18705
9a731c61c870 CVS --> Subversion
ivo
parents: 18660
diff changeset
5 Before everything else, you should know how to use Subversion properly.
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
6 Luckily Subversion comes with excellent documentation.
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
7
18705
9a731c61c870 CVS --> Subversion
ivo
parents: 18660
diff changeset
8 svn help
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
9
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
10 shows you the available subcommands,
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
11
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
12 svn help <command>
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
13
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
14 shows information about the subcommand <command>.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
15
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
16 The most comprehensive manual is the book "Version Control with Subversion"
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
17 by Ben Collins-Sussman, Brian W. Fitzpatrick and C. Michael Pilato. It can
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
18 be viewed online at
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
19
18705
9a731c61c870 CVS --> Subversion
ivo
parents: 18660
diff changeset
20 http://svnbook.org/
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
21
18705
9a731c61c870 CVS --> Subversion
ivo
parents: 18660
diff changeset
22 For more information about the Subversion project, visit
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
23
18705
9a731c61c870 CVS --> Subversion
ivo
parents: 18660
diff changeset
24 http://subversion.tigris.org/
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
25
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
26 Consult these resources whenever you have problems, they are quite exhaustive.
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
27
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
28 What follows now is a basic introduction to Subversion and some MPlayer-specific
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
29 guidelines. Read it at least once, if you are granted commit privileges to the
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
30 MPlayer project you are expected to be familiar with these rules.
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
31
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
32
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
33
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
34 I. BASICS:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
35 ==========
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
36
19248
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
37 0. Get Subversion:
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
38
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
39 The MPlayer project server runs Subversion 1.2.3. For optimal compatibility
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
40 you should use version 1.2.3 or later.
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
41
dd30cb46819d Add a paragraph about which Subversion version to use.
diego
parents: 18845
diff changeset
42
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
43 1. Checking out the source tree:
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
44
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
45 svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/ <target>
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
46
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
47 This will put the MPlayer sources into the directory <target>.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
48
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
49
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
50 2. Updating the source tree to the latest revision:
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
51
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
52 svn update
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
53
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
54 pulls in the latest changes from the repository to your working directory.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
55
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
56
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
57 3. Adding/removing files/directories:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
58
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
59 svn add <filename/dirname>
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
60 svn delete <filename/dirname>
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
61
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
62 Subversion needs to get notified of all changes you make to your working
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
63 directory.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
64
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
65
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
66 4. Showing modifications:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
67
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
68 svn diff <filename(s)>
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
69
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
70 will show all local modifications in your working directory as unified diff.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
71
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
72
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
73 5. Inspecting the changelog:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
74
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
75 svn log <filename(s)>
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
76
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
77 You may also find viewvc, a web frontend for Subversion, helpful. It's often
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
78 more comfortable than using 'svn log' and 'svn diff'. Find it here:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
79 http://svn.mplayerhq.hu/mplayer/trunk/
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
80
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
81
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
82 6. Checking source tree status:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
83
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
84 svn status
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
85
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
86 detects all the changes you made and lists what actions will be taken in case
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
87 of a commit (additions, modifications, deletions, etc.).
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
88
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
89
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
90 7. Committing:
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
91
18767
a301e6ca6aca minor Subversion-related changes
diego
parents: 18764
diff changeset
92 svn update
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
93
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
94 Run 'svn update' before committing to make sure there were no changes to the
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
95 files you worked on in the meantime. Afterwards look at the output of
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
96
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
97 svn diff <filename(s)>
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
98
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
99 to doublecheck your changes before committing to avoid trouble later on. All
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
100 experienced developers do this on each and every commit, no matter how small.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
101 Every one of them has been saved from looking like a fool by this many times.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
102 It's very easy for stray debug output or cosmetic modifications to slip in,
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
103 please avoid problems through this extra level of scrutiny.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
104
23047
702085652768 Suggest svn diff command that does not show most cosmetics
reimar
parents: 22511
diff changeset
105 For cosmetics-only commits you should get (almost) empty output from
702085652768 Suggest svn diff command that does not show most cosmetics
reimar
parents: 22511
diff changeset
106
702085652768 Suggest svn diff command that does not show most cosmetics
reimar
parents: 22511
diff changeset
107 svn diff --diff-cmd diff -x '-duwbB' <filename(s)>
702085652768 Suggest svn diff command that does not show most cosmetics
reimar
parents: 22511
diff changeset
108
19573
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
109 Also check the output of
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
110
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
111 svn status
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
112
19662
042e0009a1c0 minor wording change
diego
parents: 19573
diff changeset
113 to make sure you did not forget to 'svn add' some files (they will be marked
19573
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
114 with '?').
35d9fef1879e svn diff does not show files you forgot to add, so recommend of svn status, too
reimar
parents: 19382
diff changeset
115
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
116 Once you have made sure everything is fine
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
117
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
118 svn commit <filename(s)>
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
119
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
120 propagates your stuff to the repository. If you have made several independent
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
121 changes, commit them separately, not at the same time.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
122
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
123 When prompted for a password, type the password you got assigned by the
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
124 project admins. By default, Subversion caches all authentication tokens.
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
125 This behavior can be disabled by setting both 'store-passwords' and
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
126 'store-auth-creds' to "no" in ~/.subversion/config. You might need to remove
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
127 previous cache files, which are located in ~/.subversion/auth, by hand.
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
128
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
129 You will be prompted for a log message in an editor, which is either specified
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
130 by --editor-cmd on the command line, set in your personal configuration file
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
131 (~/.subversion/config) or set by one of the following environment variables:
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
132 SVN_EDITOR, VISUAL or EDITOR.
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
133
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
134 Log messages should be concise but descriptive. Explain why you made a change,
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
135 what you did will be obvious from the changes themselves most of the time.
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
136 Saying just "bug fix" or "10l" is bad. Remember that people of varying skill
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
137 levels look at and educate themselves while reading through your code. Don't
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
138 include filenames in log messages, Subversion provides that information.
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
139
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
140
19357
59af53f4f436 update the moving & copying rules as disscussed on mplayer-dev + some (but not all as iam lazy) fixes by the wanderer
michael
parents: 19248
diff changeset
141 8. Renaming/moving/copying files or contents of files:
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
142
19376
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
143 svn move/copy <source> <destination>
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
144 svn commit <source> <destination>
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
145
19376
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
146 Do not move, rename or copy files of which you are not the maintainer without
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
147 discussing it on the mplayer-dev-eng mailing list first!
19357
59af53f4f436 update the moving & copying rules as disscussed on mplayer-dev + some (but not all as iam lazy) fixes by the wanderer
michael
parents: 19248
diff changeset
148
19376
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
149 Never copy or move a file by using 'svn delete' and 'svn add'. Always use
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
150 'svn move' or 'svn copy' instead in order to preserve history and minimize
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
151 the size of diffs.
19357
59af53f4f436 update the moving & copying rules as disscussed on mplayer-dev + some (but not all as iam lazy) fixes by the wanderer
michael
parents: 19248
diff changeset
152
19376
be3a0f578824 Update for recent discussions on mplayer-dev-eng.
diego
parents: 19359
diff changeset
153 To split a file, use 'svn copy' and remove the unneeded lines from each file.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
154
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
155 Don't do a lot of cut'n'paste from one file to another without a very good
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
156 reason and discuss it on the mplayer-dev-eng mailing list first. It will make
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
157 those changes hard to trace.
5415
e9b15870e82f updates - thanks to Melanson...
arpi
parents: 4410
diff changeset
158
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
159 Such actions are useless and treated as cosmetics in 99% of cases,
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
160 so try to avoid them.
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
161
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
162
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
163 9. Reverting broken commits
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
164
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
165 There are 2 ways to reverse a change, they differ significantly in what they
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
166 do to the repository.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
167 The recommit old method:
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
168 svn merge
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
169 svn ci <file>
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
170 This simply changes the file(s) back to their old version locally and then
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
171 the change is committed as if it were a new change.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
172 The svn copy method
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
173 svn rm <file>
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
174 svn ci <file>
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
175 svn cp -r<good revision> svn://svn.mplayerhq.hu/mplayer/trunk/[<path>/]<file> <file>
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
176 svn ci <file>
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
177 This simply removes the file and then copies the last good version with
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
178 its history over it. This method can only be used to revert the n last
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
179 commits but not to revert a bad commit in the middle of its history.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
180 Neither method will change the history, checking out an old version will
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
181 always return exactly that revision with all its bugs and features. The
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
182 difference is that with the svn copy method the broken commit will not be
22238
2bed2e04289a Some typo fixes in svn-howto
reimar
parents: 20783
diff changeset
183 part of the directly visible history of the revisions after the reversal
2bed2e04289a Some typo fixes in svn-howto
reimar
parents: 20783
diff changeset
184 So if the change was completely broken like reindenting a file against the
2bed2e04289a Some typo fixes in svn-howto
reimar
parents: 20783
diff changeset
185 maintainers decision, or a change which mixed functional and cosmetic
22345
a50a835635c7 grammar/spelling
diego
parents: 22238
diff changeset
186 changes then it is better if it is not part of the visible history as it
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
187 would make it hard to read, review and would also break svn annotate.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
188 For the example of a change which mixed functional and cosmetic parts they
22238
2bed2e04289a Some typo fixes in svn-howto
reimar
parents: 20783
diff changeset
189 should of course be committed again after the reversal but separately, so one
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
190 change with the functional stuff and one with the cosmetics.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
191 OTOH if the change which you want to reverse was simply buggy but not
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
192 totally broken then it should be reversed with svn merge as otherwise
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
193 the fact that the change was bad would be hidden.
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
194 One method to decide which reversal method is best is to ask yourself
22345
a50a835635c7 grammar/spelling
diego
parents: 22238
diff changeset
195 if there is any value in seeing the whole bad change and its removal
22502
diego
parents: 22345
diff changeset
196 in SVN vs. just seeing a comment that says what has been reversed while
22238
2bed2e04289a Some typo fixes in svn-howto
reimar
parents: 20783
diff changeset
197 the actual change does not clutter the immediately visible history and
19382
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
198 svn annotate.
7c6c205b88b6 trying to fix the reverting paragraph
michael
parents: 19376
diff changeset
199 If you are even just slightly uncertain how to revert something then ask on
22345
a50a835635c7 grammar/spelling
diego
parents: 22238
diff changeset
200 the mplayer-dev-eng mailing list.
15227
167085fd11af 'cvs admin -o' is dangerous and should be handled with extra care.
diego
parents: 14856
diff changeset
201
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
202
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
203 10. Reverting local changes
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
204
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
205 svn revert <filename(s)>
14806
6abe4fb845ff mphq uses ssh.com, explain RSA key generation for it.
diego
parents: 14059
diff changeset
206
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
207 In case you made a lot of local changes to a file and want to start over
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
208 with a fresh checkout of that file, you can use 'svn revert <filename(s)>'.
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
209 NOTE: This has nothing to do with reverting changes on the Subversion
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
210 server! It only reverts changes that were not committed yet. If you need
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
211 to revert a broken commit, see 9.
11395
5484bc13e90a Some notes about general CVS documentation added, new 'cvs admin' section
diego
parents: 9537
diff changeset
212
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
213
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
214 11. Changing commit messages
18764
5b89070daa50 add command for changing commit messages after the commit took place.
ivo
parents: 18706
diff changeset
215
5b89070daa50 add command for changing commit messages after the commit took place.
ivo
parents: 18706
diff changeset
216 svn propedit svn:log --revprop -r <revision>
5b89070daa50 add command for changing commit messages after the commit took place.
ivo
parents: 18706
diff changeset
217
5b89070daa50 add command for changing commit messages after the commit took place.
ivo
parents: 18706
diff changeset
218 If your commit message is too short or not explanatory enough, you can edit
18845
6ff05923a028 Fix misplaced apostrophe.
diego
parents: 18841
diff changeset
219 it afterwards with 'svn propedit'.
18764
5b89070daa50 add command for changing commit messages after the commit took place.
ivo
parents: 18706
diff changeset
220
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
221
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
222 Contact the project admins <root at mplayerhq dot hu> if you have technical
18706
7fb537ba7c96 More CVS --> Subversion changes
ivo
parents: 18705
diff changeset
223 problems with the Subversion server.
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
224
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
225
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
226
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
227 II. POLICY / RULES:
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
228 ===================
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
229
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
230 1. You must not commit code which breaks MPlayer! (Meaning unfinished but
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
231 enabled code which breaks compilation or compiles but does not work.)
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
232 You can commit unfinished stuff (for testing etc), but it must be disabled
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
233 (#ifdef etc) by default so it does not interfere with other developers'
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
234 work.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
235
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
236
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
237 2. You don't have to over-test things. If it works for you, and you think it
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
238 should work for others, too, then commit. If your code has problems
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
239 (portability, exploits compiler bugs, unusual environment etc) they will be
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
240 reported and eventually fixed.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
241
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
242
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
243 3. Do not commit unrelated changes together, split them into self-contained
22511
6fb4b3944764 Clarify that commits should not be split arbitrarily by file/directory.
diego
parents: 22510
diff changeset
244 pieces, but not smaller. Do not split commits by files or directories,
6fb4b3944764 Clarify that commits should not be split arbitrarily by file/directory.
diego
parents: 22510
diff changeset
245 keep related changes together.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
246
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
247
17578
22632c215d59 Clarify policy on feature removal.
rathann
parents: 17054
diff changeset
248 4. Do not change behavior of the program (renaming options etc) or
17579
f1ce086b5eed Clarify feature removal policy: it must be approved on the mailing list.
rathann
parents: 17578
diff changeset
249 remove functionality from the code without approval in a discussion on
f1ce086b5eed Clarify feature removal policy: it must be approved on the mailing list.
rathann
parents: 17578
diff changeset
250 the mplayer-dev-eng mailing list.
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
251
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
252
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
253 5. Do not commit changes to the build system (Makefiles, configure script)
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
254 which change behavior, defaults etc, without asking first. The same
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
255 applies to compiler warning fixes, trivial looking fixes and to code
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
256 maintained by other developers. We usually have a reason for doing things
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
257 the way we do. Send your changes as patches to the mplayer-dev-eng mailing
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
258 list, and if the code maintainers say OK, you may commit. This does not
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
259 apply to files you wrote and/or maintain.
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
260
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
261
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
262 6. We refuse source indentation and other cosmetic changes if they are mixed
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
263 with functional changes, such commits will be rejected and removed. Every
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
264 developer has his own indentation style, you should not change it. Of course
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
265 if you (re)write something, you can use your own style... (Many projects
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
266 force a given indentation style - we don't.) If you really need to make
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
267 indentation changes (try to avoid this), separate them strictly from real
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
268 changes.
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
269
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
270 NOTE: If you had to put if(){ .. } over a large (> 5 lines) chunk of code,
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
271 do NOT change the indentation of the inner part (don't move it to the right)!
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
272
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
273
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
274 7. Always fill out the commit log message. Describe in a few lines what you
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
275 changed and why. You can refer to mailing list postings if you fix a
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
276 particular bug. Comments such as "fixed!" or "Changed it." are unacceptable.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
277
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
278
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
279 8. If you apply a patch by someone else, include the name and email address in
18660
7548a6a100da CVS --> Subversion
diego
parents: 18136
diff changeset
280 the log message. Since the mplayer-cvslog mailing list is publicly
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
281 archived you should add some spam protection to the email address. Send an
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
282 answer to mplayer-dev-eng (or wherever you got the patch from) saying that
17054
6ae6b30282da grammar fix on the documentation-updates note
wanderer
parents: 17051
diff changeset
283 you applied the patch. If the patch contains a documentation change, commit
6ae6b30282da grammar fix on the documentation-updates note
wanderer
parents: 17051
diff changeset
284 that as well; do not leave it to the documentation maintainers.
2200
1333f6184ad3 some ifno for cvs write owners
arpi
parents:
diff changeset
285
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
286
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
287 9. Do NOT commit to code actively maintained by others without permission. Send
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
288 a patch to mplayer-dev-eng instead.
12107
bc89ddda34b8 Developers should subscribe to mplayer-cvslog, mention mplayer-docs.
diego
parents: 12099
diff changeset
289
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
290
18660
7548a6a100da CVS --> Subversion
diego
parents: 18136
diff changeset
291 10. Subscribe to the mplayer-cvslog mailing list. The diffs of all commits
12107
bc89ddda34b8 Developers should subscribe to mplayer-cvslog, mention mplayer-docs.
diego
parents: 12099
diff changeset
292 are sent there and reviewed by all the other developers. Bugs and possible
bc89ddda34b8 Developers should subscribe to mplayer-cvslog, mention mplayer-docs.
diego
parents: 12099
diff changeset
293 improvements or general questions regarding commits are discussed there. We
bc89ddda34b8 Developers should subscribe to mplayer-cvslog, mention mplayer-docs.
diego
parents: 12099
diff changeset
294 expect you to react if problems with your code are uncovered.
12024
f7980032d9ca whitespace cosmetics
diego
parents: 11679
diff changeset
295
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
296
13288
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
297 11. Update the documentation if you change behavior or add features. If you are
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
298 unsure how best to do this, send a patch to mplayer-docs, the documentation
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
299 maintainers will review and commit your stuff.
78d00bbba153 CVS policy updated as discussed on dev-eng.
diego
parents: 12904
diff changeset
300
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
301
20783
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
302 12. Always send a patch to the mplayer-dev-eng mailing list before committing
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
303 if you suspect that the change is going to be controversial. Based on past
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
304 experience, these changes are likely to be controversial:
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
305 - feature removal, even if obsolete
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
306 - changes to "special" output messages (like the "Core dumped ;)" message)
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
307 - verbosity changes from default (info) level
22510
76f7adafc67b spelling/punctuation
diego
parents: 22502
diff changeset
308 - changes to "historical" parts of docs and web pages
20783
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
309 - use of internal or external libraries
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
310
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
311
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
312 13. Try to keep important discussions and requests (also) on the
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
313 mplayer-dev-eng mailing list, so that all developers can benefit from them.
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
314 IRC is good for quick discussions, but nobody is there 24/7.
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
315
dc1a1ff6c7d9 Updated for controversial changes and irc-only decisions
rtogni
parents: 19662
diff changeset
316
12099
8dedd440c31c Commit independent changes separately.
diego
parents: 12025
diff changeset
317 Also read DOCS/tech/patches.txt !!!!
5415
e9b15870e82f updates - thanks to Melanson...
arpi
parents: 4410
diff changeset
318
7904
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
319 We think our rules are not too hard. If you have comments, contact us.
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
320
98168d30f67d Spellchecked, reworded, reformatted, small additions and corrections.
diego
parents: 5415
diff changeset
321
3258
d7bd32263398 Added a beginners guide
mswitch
parents: 3149
diff changeset
322
18827
67f847c438bd Remove old CVS beginners guide
ivo
parents: 18769
diff changeset
323 III. Beginners Guide
3258
d7bd32263398 Added a beginners guide
mswitch
parents: 3149
diff changeset
324 ====================
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
325
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
326 The typical flow of development would be:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
327
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
328 1. Check out the source:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
329
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
330 svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/ devel
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
331
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
332
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
333 2. Make your changes.
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
334
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
335
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
336 3. Create a patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
337
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
338 Run 'svn diff' from the root of the source tree, like this:
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
339
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
340 cd devel
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
341 svn diff > ../my_changes.patch
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
342
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
343 If you have made several changes, but only want to submit one for review
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
344 by other developers, you can specify the filename(s), for example:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
345
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
346 svn diff mplayer.c > ../major_cleanup.patch
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
347
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
348
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
349 4. Check the patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
350
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
351 Check out another, clean source tree and verify your patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
352
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
353 svn checkout svn://svn.mplayerhq.hu/mplayer/trunk/ clean
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
354 cd clean
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
355 patch -p0 --dry-run < ../my_changes.patch
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
356
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
357 If there are no errors, you can apply your patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
358
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
359 patch -p0 < ../my_changes.patch
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
360
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
361 After that, verify that MPlayer still builds correctly with your patch
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
362 applied. Also, be sure that your patch meets our policy as described in
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
363 section II, specifically rules 1 to 6, before you continue submitting
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
364 the patch.
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
365
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
366
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
367 5. Submit the patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
368
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
369 Send an e-mail to the mplayer-dev-eng mailing list. Describe what your
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
370 patch does and why, and attach the patch file for review by others.
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
371
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
372
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
373 6. During the review process, incorporate all suggested fixes. Go to step 2
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
374 repeatedly until there is nothing more to do for step 6. Of course, if
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
375 you don't agree with certain suggestions, things can be discussed on
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
376 the mailing list in a polite manner.
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
377
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
378
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
379 7. Commit the patch:
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
380
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
381 If your patch is accepted, double check if your source tree contains the
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
382 most recent version of your patch with 'svn diff'! After verifying that
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
383 you met these conditions, commit with:
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
384
18840
3b42c599ea09 Rewrite and extend the Subversion guidelines.
diego
parents: 18828
diff changeset
385 svn commit <filename(s)>
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
386
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
387 Go to step 2 ad infinitum until MPlayer is the perfect media player ;)
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
388
18841
3f59edf39ea2 cosmetics
diego
parents: 18840
diff changeset
389
18828
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
390 Note: If you are listed as the maintainer for a particular piece of code,
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
391 you can skip step 5 and 6 if your patch _only_ applies to the code you
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
392 maintain. If it touches other code or is otherwise very intrusive, please
55ebe20fadbc Add new Subversion beginners guide
ivo
parents: 18827
diff changeset
393 post it to mplayer-dev-eng first.