# FCM: User Guide: Annex: Quick Reference

Note: some sub-commands can be invoked with alternate names. For example, `fcm help` is the same as `fcm ?`. In this annex, some favourite alternate names are listed, separated by a pipe, i.e. the above example will be given as `fcm help|?`.

## Getting help

`fcm help|?`
  get list of subcommands
`fcm help|? SUBCOMMAND`
  get help on SUBCOMMAND

## Maintaining the working copy

`fcm checkout|co [OPTIONS] URL [DEST]`
  Checkout URL (and create a working copy at DEST)
`fcm checkout|co -r N URL [DEST]`
  Checkout revision N of URL (and create a working copy at DEST)
`fcm info`
  Print working copy information
`fcm status|st [OPTIONS]`
  Print status of working copy
`fcm status|st -u`
  Show update information
`fcm status|st -v`
  Show verbose information
`fcm update|up`
  Update working copy with repository changes
`fcm switch|sw URL`
  Switch your working copy to point to a branch specified by URL
`fcm commit|ci`
  Commit local changes back into the repository

## Preparing changes

`fcm diff|di [OPTIONS]`
  Display working copy changes in unified diff format
`fcm branch-diff|bdiff|bdi [OPTIONS]`
  Show differences relative to the base of the branch
`fcm diff|di -g`
  Display working copy changes with a graphical diff tool
`fcm diff|di -r N`
  Display working copy changes against revision N
`fcm diff|di -t`
  Display differences in Trac, (with -b only)
`fcm revert [OPTIONS] PATH`
  Restore the file PATH to the pristine copy
`fcm revert -R PATH`
  Descend PATH recursively, restoring any modified files to the pristine copy
`fcm mkdir [PATH]`
  Add a directory PATH under revision control
`fcm add [OPTIONS] PATH ...`
  Add PATH under revision control
`fcm add -c [PATH]`
  Check for items not under revision control and add them
`fcm delete|del|rm [OPTIONS] PATH ...`
  Remove PATH from revision control
`fcm delete|del|rm -c [PATH]`
  Check for missing items and remove them
`fcm copy|cp SRC DST`
  Duplicate SRC to DST, remembering history
`fcm move|mv SRC DST`
  Move or rename SRC to DST, remembering history
`fcm propset|ps svn:executable ON FILE`
  Indicate that FILE will have executable permission when checked out to a Unix file system.
`fcm propdel|pd svn:executable FILE`
  Reverse of the above.
`fcm propset|ps svn:special ON FILE`
  Indicate that FILE is a symbolic link rather than a regular file.
`fcm propdel|pd svn:special FILE`
  Reverse of the above.

## Browsing

`fcm log [OPTIONS] [TARGET]`
  Show the log message of a TARGET that can either be working copy or URL
`fcm log -r N[:M] [TARGET]`
  Show the log message of a range of reivsions
`fcm propedit|pe --revprop svn:log -r N [TARGET]`
  Edit the commit log message of revision N.
`fcm list|ls [OPTIONS] [TARGET]`
  List directory entries in TARGET
`fcm list|ls -r N [TARGET]`
  List directory entries of revision N
`fcm list|ls -v [TARGET]`
  List directory entries in verbose mode
`fcm list|ls -R [TARGET]`
  List directory entries recursively down the directories
`fcm browse [TARGET]`
  Open a WWW browser to browse TARGET with Trac

## Branching

`fcm branch-info|binfo [OPTIONS] [URL]`
  Show branch information of URL or local working copy
`fcm branch-delete|bdel [URL]`
  Show branch information and delete the branch
`fcm branch-create|bcreate NAME [URL]`
  Create a branch
`fcm branch-list|blist|bls [--show-all|-a] [URL]`
  Lists branches
`fcm merge [SOURCE]`
  Merge changes from SOURCE to your working copy
`fcm conflicts|cf`
  Use xxdiff to resolve conflicts in your working copy