Links

Content Skeleton

This Page

Previous topic

FOSSIL USAGE

Next topic

Java Demos

Fossil SCM

Simple, high-reliability, distributed software configuration management

Fossil weaknesses

  1. pre-commit hooks, eg disallow tabs in python

Linux serving with xinetd

After placing the config, need to restart the xinetd service:

[blyth@cms01 e]$ curl http://localhost:591      ## just hangs
[blyth@cms01 e]$ sudo /sbin/service xinetd status
xinetd (pid 3099) is running...
[blyth@cms01 e]$ sudo /sbin/service xinetd stop
Stopping xinetd:                                           [  OK  ]
[blyth@cms01 e]$ sudo /sbin/service xinetd start
Starting xinetd:                                           [  OK  ]
[blyth@cms01 e]$ curl http://localhost:591
<h1>Not Found</h1>

Darwin serving with launchctl

simon:fossil blyth$ sudo launchctl unload $(fossil-cfg-path)
simon:fossil blyth$ sudo launchctl load $(fossil-cfg-path)

Alternatively the function fossil-reload does this

configure local options

simon:fossil-src-20130216000435 blyth$ ./configure --help
  Local Options:
  --with-openssl=path|auto|none  Look for openssl in the given path, or auto or none
  --with-zlib=path               Look for zlib in the given path
  --with-tcl=path                Enable Tcl integration, with Tcl in the specified path
  --with-tcl-stubs               Enable Tcl integration via stubs mechanism
  --disable-internal-sqlite      Don't use the internal sqlite, use the system one
  --static                       Link a static executable
  --disable-lineedit             Disable line editing
  --fossil-debug                 Build with fossil debugging enabled
  --json                         Build with fossil JSON API enabled
  --markdown                     Build with markdown engine enabled

Functions

Operational Functions

fossil-url-check [url]

check fossil is responding:

simon:e blyth$ fossil-url-check
=== fossil-url-check : INFO fossil running OK at http://localhost:591
simon:e blyth$ fossil-url-check http://localhost:592
=== fossil-url-check : WARN FOSSIL NOT RUNNING AT http://localhost:592

Config Functions

fossil-cfg-path
path to the config file
fossil-cfg-edit
direct editing the config to test changes before persisting them in the template
fossil-tmpl
path to the config template
fossil-cfg-
fill the template and emit to stdout for checking, the context used for filling comes from the [fossil] section of the ini config file ~/.env.cnf
fossil-cfg
uses fossil-cfg- to generate config and copy it into the needed location
fossil-reload
OSX specific : uses launchctl to unload, then load the fossil config
fossil-launchctl cmd
launchctl cmd operations on the fossil-cfg-path

Migration Functions

fossil-fromgit
exploring migrations from git into fossil

Non-standard build

The jimtcl branch, adds hooks, needs compilation with FOSSIL_ENABLE_TCL ?

fossil-switch jimtcl
      # defines FOSSIL_NAME which is used by the other functions
echo $FOSSIL_NAME
fossil-get
fossil-build