#!/usr/bin/env bash
#
# The help for the Cogito toolkit.
# Copyright (c) Petr Baudis, 2005
#
# Takes an optional argument describing the command to show the help for.

. ${COGITO_LIB}cg-Xlib


if [ "$1" ]; then
	cmd=$(echo "$1" | sed 's/^cg-//')
	print_help $cmd
fi


cat <<__END__
The Cogito version control system  $(cg-version)

Usage: cg-COMMAND [ARG]...

Available commands:
	cg-add		FILE...
	cg-branch-add	BNAME SOURCE_LOC
	cg-branch-ls
	cg-cancel
	cg-clone	[-s] SOURCE_LOC [DESTDIR]
	cg-commit	[-m"Commit message"]... [-e] [FILE]... < log message
	cg-diff		[-p] [-r FROM_ID[:TO_ID]] [FILE]...
	cg-export	DEST [TREE_ID]
	cg-help		[COMMAND]
	cg-init
	cg-log		[-c] [-f] [-r FROM_ID[:TO_ID]] [FILE]...
	cg-ls		[TREE_ID]
	cg-merge	[-c] [-b BASE_ID] FROM_ID
	cg-mkpatch	[-s] [-r FROM_ID[:TO_ID]]
	cg-patch			< patch on stdin
	cg-pull		[BNAME]
	cg-restore	[FILE]...
	cg-rm		FILE...
	cg-seek		[COMMIT_ID]
	cg-status
	cg-tag		TNAME [COMMIT_ID]
	cg-tag-ls
	cg-update	[BNAME]
	cg-version

Advanced (low-level or dangerous) commands:
	cg-admin-lsobj	[OBJTYPE]
	cg-admin-uncommit [COMMIT_ID]

These expressions can be used interchangably as "ID"s:
	empty string, "this" or "HEAD" (current HEAD)
	branch name (as registered with cg-branch-add)
	tag name (as registered with cg-tag)
	shortcut hash (shorted unambiguous hash lead)
	commit object hash (as returned by commit-id)
	tree object hash (accepted only by some commands)

For details on individual commands, do e.g.:
	cg-help cg-log
	cg-log --help
(both variants are equivalent)
__END__
