Daniel Wang wrote:
>>What is CVS?
>>
>>
CVS stands for Concurrent Version System. It allows many people to
collaborate on the same set of source code so that people do not mess up
each other's work.
>>Comparing revisions
>>
>>
>
>Using the GNU Diff tool, you can compare your local files and the
>respective remote CVS files and see their differences line by line. The
>diff output allows you or another person to review changes you have made
>without going over the entire code.
>
>WinCvs comes with GNU Diff. You can generate Diff output from menu.
>Unfortunately, the output is not very useful. By default, Diff only
>shows the changed lines but not the context (lines before and/or after
>the changed lines)
>
>In mozilla.org, Diff files used for code review are in the unified
>format which shows context along with the changed code. To output Diff
>in this format, you have to use the WinCvs command line tool.
>Fortunately, the command is not difficult, and revision comparsion is
>probably the only occassion you will have to use the command line tool.
>
>To use the command line tool, open the `Admin' menu and choose `Command
>line...'. Type in the command. For Diff in unified format, the command is
> cvs diff -u -r <revision> <filename>
>
If you have one of the recommended scripting environments installed, you
can type the commands directly into the output section and skip the
Admin Command Line... dialog box.
>The option "-u" tells Diff to use the unified format. The option "-r
><revision>" tells Diff what revision you are comparing your file
>against. For example, "-r MOZILLA_1_0_0_BRANCH" tells Diff to compare
>your file against the revision in the Mozilla 1.0.0 branch. If you leave
>out this option, Diff will compare your file against the latest revision
>in the trunk.
>
>Filename is a list of filenames separated by space. If you leave out
>this, Diff will compare all files in the current folder.
>
>Reading unified output is straightforward. Output for each revision
>comparsion begins with some information on what revisions are being
>compared, followed by the source code. At the beginning of each line is
>either a space, a plus ('+') sign, or a minus ('-') sign. A plus sign
>indicates line added. A minus ('-') sign indicates line removed. A
>space (' ') indicates context.
>
>More detailed description of the format can be found at
><http://www.tac.nyc.ny.us/manuals/prog/diff_3.html#SEC21>
>
>You can save Diff output to a text file as a patch.
>
>�z�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�{
>�xsidenote: what is Bugzilla? �x
>�xBugzilla is ... [note empty, contribution welcome] �x
>�|�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�w�}
>
>
Bugzilla is a bug tracking system. It allows people to file bugs,
confirm those bugs, suggest patches for the bugs, and mark when the
patch is checked into the soure.
Appendix I: Mozilla source map
>
>Partly adopted from Nathan Torkington's Unix source roadmap
>
>LEGAL Legal issues surrounding parts of the code (not the license)
>Makefile Master makefile (builds portions depending on envariables)
>client.mk Client make file
>README Link to unxbuild.txt
>build Generate build resource numbers for Win and Mac.
> /mac Macintosh code for build numbers
>cmd Front Ends
> /stubfe Stub for writing your own Front End
> /xfe X Front End
> /winfe Windows Front End
> /macfe Macintosh Front End
>dbm Simple database (ndbm code)
>dist Object and executables that you build will be put here
>include Include files for Mozilla
>jpeg JPEG6 library, with Netscape mods (C)
>js Java Script
>js/jsd Java Script Debugger (C)
>js/jsd/classes/netscape/jsdebug Debugging classes from Netscape
>js/jsd/corba Empty holes for CORBA classes and interfaces
>js/jsj LiveConnect - the glue between Java and JavaScript (C)
>js/jsj/classes/netscape/javascript (Java)
>js/jsj/javax Empty
>js/src Actual source to JavaScript (C)
>l10n Localisation
>lib Libraries
>lib/htmldlgs HTML Dialogs (C)
>lib/layout HTML Layout (mostly C, little C++)
>lib/libcnv PNG, PPM, etc, image conversion (C)
>lib/libi18n Internationalisation (C)
>lib/libi18n/unicode Unicode support (C)
>lib/libi18n/unicode/fromftp Empty
>lib/libi18n/unicode/tbltool Utilities?
>lib/libi18n/unicode/ufrmtbl Automatically generated tables
>lib/libi18n/unicode/utotbl Automatically generated tables
>lib/liblayer Library for layers (used in streamed page layout) (C)
>lib/liblayer/src Code for layers (C)
>lib/liblayer/include .h files for layers
>lib/libmime MIME code (C)
>lib/libmisc Miscellaneous code (bookmarks, preferences, ...) (C)
>lib/libmocha JavaScript (C)
>lib/libnet Network communications (DNS, URL, ...) (mostly C, some C++)
>lib/libnet/tests Tests for libnet (empty)
>lib/libparse HTML parser (C)
>lib/libpics W3O Platform Independent Content-Identification System (C)
>lib/libpwcac Password Cache (C)
>lib/libstyle Style Sheets (C)
>lib/mac Macintosh library (details?)
>lib/mariner Forms? (C++)
>lib/mariner/public Include files for Mariner library
>lib/mariner/src Source for Mariner library (C++)
>lib/plugin Plugin handling library (C and C++)
>lib/xlate Postscript Translation (C)
>lib/xp Profile? (C)
>modules/edtplug Netscape Plugin Manager (C)
>modules/editplub/include Include files
>modules/editplub/src Include files (C)
>modules/libfont Font Library/Broker (C++)
>modules/libfont/classes/netscape/java Java classes to access fonts (Java)
>modules/libfont/jmcgen Automatically generated C source (C) ?
>modules/libfont/producers Empty
>modules/libfont/public Empty
>modules/libfont/src Source to libfont (C++)
>modules/libhook Hooks? (C)
>modules/libhook/public Headers
>modules/libhook/src Source (C)
>modules/libimg Image Library (decode/cache images) (C, Java and JavaScript)
>modules/libimg/classes/netscape/libimg Java classes for images (Java)
>modules/libimg/doc Empty
>modules/libimg/friend Empty
>modules/libimg/png PNG code (C)
>modules/libimg/public Header files (C)
>modules/libimg/src Code for libimg (C)
>modules/libimg/test Empty
>modules/libpref LDAP and JS Preferences ?
>modules/libpref/admin DLL code for Win32 (C?)
>modules/libpref/doc Empty
>modules/libpref/friend Empty
>modules/libpref/l10n Localisation hooks (C)
>modules/libpref/public Header files (C)
>modules/libpref/src Common source (C, JavaScript)
>modules/libpref/init Javascript initialisation (JavaScript)
>modules/libpref/mac Macintosh-specific initialisation (C? and JavaScript)
>modules/libpref/os2 OS2-specific initialisation (JavaScript)
>modules/libpref/unix Unix-specific initialisation (C and JavaScript)
>modules/libpref/win Windows-specific initialisation (C and JavaScript)
>modules/libpref/win/res Windows-specific resources
>modules/libpref/tests Empty
>modules/libreg Registry (C)
>modules/libreg/classes/netscape/softupdate Empty
>modules/libreg/include C header files (C)
>modules/libreg/source Empty
>modules/libreg/src C source (C)
>modules/libreg/tests Tests (C)
>modules/libutil Observers (wrappers around objects) (C)
>modules/libutil/public Header files
>modules/libutil/src Source (C)
>modules/progress Window showing progress of download
>modules/progress/public Header files
>modules/progress/src Code (C++)
>modules/rdf RDF Hypertree (C)
>modules/rdf/classes/netscape/rdf/ Java classes (Java)
>modules/rdf/classes/netscape/rdf/core Java classes (Java)
>modules/rdf/images GIF images
>modules/rdf/include Header files (C)
>modules/rdf/src C source (C)
>modules/rdf/win32/ Empty
>modules/schedulr Scheduling service
>modules/schedulr/public Header files
>modules/schedulr/src Source (C)
>modules/security Security: certificates, etc.
>modules/softupdt Stub for receiving software updates
>modules/zlib Standard zlib compression library, modified by
>Netscape
>nav-java/ Where Mozilla's java support should go
>nav-java/stubs Stubs for java support
>nsprpub/ Platform-independent interface to threads, etc.
>nsprpub/src/io/ Polling for I/O?
>nsprpub/src/linking/ Dynamic loading/linking?
>nsprpub/src/malloc/ Memory allocation
>nsprpub/src/md/ Threading and poll?
>nsprpub/src/memory/ Allocate segments of memory
>nsprpub/src/misc/ Envariables, longs, errors, netdb, system.
>nsprpub/src/pthreads/ P(OSIX?) Threads
>nsprpub/src/threads/ Threads
>sun-java/ Sun's Java VM
>sun-java/stubs Stubs for Sun's Java VM
>unxbuild.htm HTML for Unix Build Process
>unxbuild.txt Instructions on building Mozilla for Unix.
>xpcom/ Mozilla's COM-like object connectivity code
>
>
>
Explain CVSIGNORE files.
--
Brant Langer Gurganus
Default QA Contact, Tech Evangelism
Default QA Contact, Calendar