FogBugz 6.0 Online Help

Setting up CVS

There are two steps in setting up FogBugz-CVS integration:

  1. Getting CVS to transmit changes to FogBugz
  2. Getting FogBugz to provide links to CVSweb, the web-based CVS repository browser

Getting CVS to transmit changes to FogBugz

Check out the CVSROOT directory.

[Image]

Create a file named bugz.txt. Type "BUGZID:", then hit enter, then hit enter again. You can see, highlighted below, that the cursor is two lines below the text. You really need those carriage returns.

[Image]

Add bugz.txt to the repository.

[Image]

Decide whether you want to use the Perl or VBScript versions of the CVS scripts. These run on the CVS server.

Log on to FogBugz as an administrator, and go to Settings | Site. In the Main tab, you will see a link to download scripts.

Download the logBugData script.

FogBugz adds the extension .safe to the name of the file that you downloaded, to keep it from running accidentally. Edit the file name to remove that part of the extension.

Copy in the logBugData script, and add it to the repository.

Edit the file rcsinfo, adding one line at the end as shown below. Change the file path shown here so that it points to the bugz.txt file you just created.

Unix/Linux/Macintosh CVS server:

ALL $CVSROOT/CVSROOT/bugz.txt

Windows CVS server:

ALL $CVSROOT\CVSROOT\bugz.txt

[Image]

Edit the file loginfo, adding one line at the end as shown below. Again, change the file path shown here to point to the logBugData.pl file in your CVS repository on your CVS server.

Using Perl on Unix:

ALL perl -s /path to cvs/logBugData.pl "%{sVv}"

Using Perl on Windows:

ALL perl -s C:\\path to cvs\\logBugData.pl "%{sVv}"

Using VBScript on Windows:

ALL cscript.exe C:\\path to cvs\\logBugData.vbs "%{sVv}"

[Image]

Edit the file checkoutlist, adding two lines at the end as shown in these examples:

Using Perl:

bugz.txt Error-bugz.txt
logBugData.pl Error-logBugData.pl

Using VBScript:

bugz.txt Error-bugz.txt
logBugData.vbs Error-logBugData.vbs

[Image]

Check in your changes.

[Image]

Each CVS user will have to re-check out the source tree they are working on so that the "CVS: BUGZID:" line is added to the template for log notes. Otherwise everything will still work, but they will have to remember to add BUGZID: manually each time they commit a change.

If your CVS repository is on Unix make sure to set execute permissions on the logBugData.pl file (chmod +x logBugData.pl).

Here's a screenshot of a check-in that successfully connected to FogBugz (this screenshot is of CVSNT on Windows, utilizing logBugData.vbs, that's why you see "Windows Script Host" poking its face in): 

Notice that it says "Adding bug info for Bug ID #1" -- this means that when you view bug number 1 in FogBugz you see the check-in in the left hand column.

Getting FogBugz to provide links to CVSweb, the web-based CVS repository browser

In order to browse a CVS repository, you need something that allows you to view file diffs and history logs from a web browser. We recommend CVSweb (If you run CVSNT on Windows, you can use CVSWEB NT).

Once that is installed and working with your CVS repository, log onto FogBugz as an administrator and on the Settings | Site screen, go to the Main tab.

Under Source Control URL for logs, enter http://path to cvs web/cvsweb/cvsweb.cgi^FILE

Under Source Control URL for diffs, enter http://path to cvs web/cvsweb/cvsweb.cgi^FILE?r1=^R1&r2=^R2