GIMP Script-fu

cloning-repo
Login

All of my scripts are maintained using Fossil source code manager. You can clone this repository, thus gaining direct access to all of my scripts (including the history of their development) using the following command:

fossil clone http://anonymous@www.chiselapp.com/user/saulgoode/repository/script-fu/ sg-script-fu.fossil

When prompted for a password, just hit RETURN. This will create a file named 'sg-script-fu.fossil' on your disk (you can name it something else if you wish, but I recommend that you use the .fossil extension). This single file -- called a Fossil repository (or "repo" for short) -- is sort of like a ZIP archive and contains copies of all of my scripts (about 75 at present), and also the full history of all of the changes made to each of them. The .fossil file also contains the contents of this WIKI (except for the images).

You can browse your cloned repo by issuing the following command:

fossil ui sg-script-fu.fossil

This will open the repository in your webbrowser and present you with a user interface identical to the one you are viewing now, except that it will be your local copy and you will have the ability to change things as much as you like.

To actually access the scripts in the Fossil repo, create a directory to hold the scripts, change to that directory, and then run "fossil open /path/to/sg-script-fu.fossil".

mkdir work
cd work
fossil open ../sg-script-fu.fossil

The directory will be populated with the latest versions of the files in the trunk branch of the repo. My script-fu repository is organized such that each script belongs to its own branch, while my favorite, most useful scripts also appear in trunk.

Within you working directory, there is also a hidden file named ".fslckout". This contains some meta-data such as the location of the original repository file and some undo and merging information.

You can examine an individual branch by doing a "checkout" on it. For example:

fossil checkout sg-sudoku

After doing a checkout, only the files in the new branch will populate the directory. You can get a list of all of the branches in the repository with:

fossil branch list

More to come at a later date.