mozilla

Compare Revisions

Using SVK With Mozilla CVS

Change Revisions

Revision 198045:

Revision 198045 by A1kmm on

Revision 198046:

Revision 198046 by A1kmm on

Title:
Using SVK With Mozilla CVS
Using SVK With Mozilla CVS
Slug:
Using_SVK_With_Mozilla_CVS
Using_SVK_With_Mozilla_CVS
Tags:
"Developing Mozilla"
"Developing Mozilla"
Content:

Revision 198045
Revision 198046
n191svk cp //mozilla/trunk //mozila/branches/bug12345n191svk cp -m "Branch for Bug 12345: Support Foo Bar" //mozilla/trunk
 > //mozila/branches/bug12345
tt194    <p>
195      Now you can edit the tree as you want, and commit to save w
 >hen finished.
196    </p>
197    <h5 name="Merging_changes_on_trunk_into_branches">
198      Merging changes on trunk into branches
199    </h5>
200    <p>
201      If you want to merge changes on the trunk (including vendor
 > changes which have been merged into the trunk. Never skip from v
 >endor =&gt; branch, always go through trunk or your life will get
 > difficult), use:
202    </p>
203    <pre>
204svk sm //mozilla/trunk //mozilla/branches/bug12345
205</pre>
206    <h5 name="Merging_changes_from_branches_onto_trunk">
207      Merging changes from branches onto trunk
208    </h5>
209    <p>
210      You can merge committed changes from the branches back on t
 >o the trunk using:
211    </p>
212    <pre>
213svk cm //mozilla/branches/bug12345 //mozilla/trunk
214</pre>
215    <h5 name="Switching_between_patches_you_are_working_on">
216      Switching between patches you are working on
217    </h5>
218    <p>
219      Use the svk sw //mozilla/branches/bug54321 to switch to a d
 >ifferent branch.
220    </p>
221    <h5 name="Making_patches">
222      Making patches
223    </h5>
224    <p>
225      There are lots of different patches you can make, but for B
 >ugzilla purposes, you generally want a cumulative one against ven
 >dor. To do this, you create a scratch branch (don't worry, these 
 >operations are fast, since copies are cheap in SVK).
226    </p>
227    <pre>
228svk cp -m "Create scratch branch" //mozilla/vendor //mozilla/temp
 >_branches/bug12345_patch1
229</pre>
230    <p>
231      Next, do a svk log to see what changes you committed to the
 > branch (only counting changes on the branch, not merges). Pick t
 >he changes you want, and merge them into the scratch branch as fo
 >llows:
232    </p>
233    <pre>
234svk merge -m "Branch to scratch branch" -c revisionno //mozilla/b
 >ranches/bug12345 //mozilla/temp_branches/bug12345_patch1
235</pre>
236    <p>
237      Repeat until all desired revisions are added. Note you can 
 >also use the form -r firstrevision:lastrevision instead of -c
238    </p>
239    <p>
240      Finally, do a
241    </p>
242    <pre>
243svk diff //mozilla/vendor //mozilla/temp_branches/bug12345_patch1
244</pre>
245    <p>
246      You might also want to remove the temp branch so you don't 
 >get confused (it doesn't save disk-space because the revision his
 >tory is still kept, it doesn't use much either, but it makes it m
 >uch cleaner if you want to list your temp branches).
247    </p>
248    <h5 name="Working_with_multiple_branches_from_CVS">
249      Working with multiple branches from CVS
250    </h5>
251    <p>
252      For now, I would suggest just repeating the same structure 
 >but in a different directory, because I haven't found a way for S
 >VK to know the relationship between the files. This will still al
 >low you to do merges between different CVS branches.
253    </p>

Back to History