Revisions, Tags and All That

Title: Revisions, Tags, and All That Date: 2009-03-23 14:53:32 MDT X-UUID: 38C1B524-63E1-448E-BA37-578DB5BCDC7F

Revisions Apply to the Entire Repository

Summary: Don’t pay (much) attention to the VERSION file.

Summary: Since the revision number of each file changes whenever anyone checks anything in, its better to rely upon the svnversion command, rather than the VERSION file.

Let’s review some Subversion basics:

Unlike most version control systems, Subversion’s revision numbers apply to entire trees, not individual files. Each revision number selects an entire tree, a particular state of the repository after some committed change. Another way to think about it is that revision N represents the state of the repository filesystem after the Nth commit. When Subversion users talk about “revision 5 of foo.c”, they really mean “foo.c as it appears in revision 5.” Notice that in general, revisions N and M of a file do not necessarily differ! Many other version control systems use per-file revision numbers, so this concept may seem unusual at first. (Former CVS users might want to see Appendix B, Subversion for CVS Users for more details.)

Those two links are worth a quick review, but basically the idea is that the revision number is incremented each time anyone makes a change anywhere.

So you’re looking at a section of code — how do you know which revision numbers apply to that code?

Jonas gave us a good idea earlier today:

Maybe it wasn’t clear but there exists already a command which returns the version number of an SVN checkout, e.g.

jmlarsen@pc011896> svnversion ../../../gnuactive/code/
7438M

(where M probably means that I’ve modified something in my local copy after getting 7438). It could also be simpler to use that compared to maintaining the VERSION file.

Viewing the Log for a Specific Directory, Specific Revision RANGE

Another important tip is revision ranges-r beginning:end.

code $ cd display
display $ svn log -r 6795:7443 .

------------------------------------------------------------------------
r6807 | david.king | 2008-12-16 17:15:48 -0700 (Tue, 16 Dec 2008) | 13 lines

       New Development: Yes
            JIRA Issue: CAS-531
      Ready to Release: (? -- I think so)
     Interface Changes: Yes
What Interface Changed: A couple colorbar adjust UI items
  Put in Release Notes: Yes
           Description: Colorbars adjust their own thickness better.  In blink mode, only colorbars which are 'on blink' show.

         Test Programs: (Manual testing:)
*  Load a raster image.  Turn on the colorbar ("wedge').  Zoom into a wide rectangle.  Widen/shorten the display to accommodate.  The colorbar should not become fat.  
* Blink two compatible raster images with colorbars on.  Both bars should show only if/when you enable multiple subpanels.


------------------------------------------------------------------------
r6808 | david.king | 2008-12-16 17:16:43 -0700 (Tue, 16 Dec 2008) | 14 lines

       New Development: Yes
            JIRA Issue: CAS-531
      Ready to Release: (? -- I think so)
     Interface Changes: Yes
What Interface Changed: A couple colorbar adjust UI items
  Put in Release Notes: Yes
           Description: Colorbars adjust their own thickness better.  In blink mode, only colorbars which are 'on blink' show.
.
.
.

-- BoydWaters - 2009-03-23
Topic revision: r1 - 2009-03-23, BoydWaters
This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding NRAO Public Wiki? Send feedback