SYNOPSISori COMMAND [ARGUMENTS...]
DESCRIPTIONThis tool provides the command line interface to the Ori distributed file system. Provides useful tools for accessing, manipulating, and repairing Ori repositories without the use of FUSE. It can be used alone without FUSE to checkout a snapshot of a tree and commit changes to one. This tool is also the main daemon used by the SSH push/pull interface.
This command line tool also controls the Ori FUSE driver if run inside a mounted file system rather than a repository. Only certain commands are supported at the moment and the list is documented in the orifs man page.
N.B. This project is still in flux and repository layouts may not be compatible between releases. You may be required to copy files from one repository to another manually and the history may not be preserved.
REPOSITORY COMMANDSThis list contains commands that will operate on your local instance of the repository. These may callout to remote repositories for data if this was an InstaCloned repository.
- checkout [--force] COMMIT-HASH
- Checkout a revision of the repository. By default this applies the current modified files onto the specified revision, but for most users the merge command is a safer alternative. The --force flag is used to discard current changes and checkout the revision specified.
- Display a log of changes made to the repository.
- merge COMMIT-HASH
- Merges the specified change with the current HEAD.
- newfs FS-NAME
- Create a file system with the given name.
- removefs FS-NAME
- Remove the specified file system.
- Show repository information.
- snapshot [-m MESSAGE] [SNAPSHOT-NAME]
- Take a snapshot of the repository. You may optionally supply a message to be included and a name.
- List all snapshots in this repository.
- Show a list of currently modified files and directories in the repository.
Print the commit hash for the HEAD revision.
REMOTE MANAGEMENT COMMANDSThis section lists commands used to clone repositories, pull changes, and manage a list of remote repositories to interact with. The special remote repository named origin is used as the default for certain operations that take an optional remote name. At the moment an InstaCloned repository can only be created with orifs.
- replicate [--ondemand] SOURCE-PATH
- Clone a remote or local repository into a new directory.
- pull [PATH|REMOTE-NAME]
- Pulls changes from a repository. The user can specify a path to another repository or the name of a previously registered repository. By default the command pulls from the origin.
- Display a list of the remote nodes.
- remote add NAME PATH
- Add a remote repository given a path
- remote remove NAME
Remove a remote repository by name
ADVANCED COMMANDSThis section lists a few commands that are for advanced users only. They either provide access to lower level functionality or are experimental. The verify command is useful to all users to check that the repository has not been corrupted.
- Displays a log of relevant commits made to the specified file.
- Searches for detached heads that are not referenced by a branch.
- Garbage collect any deleted objects that have not been reclaimed. This will repack the pack files that contain deleted objects.
- Experimental command to graft changes from one repository into another.
- purgecommit COMMIT-HASH
- Deletes a commit. Use this command with caution as it's experimental as certain commands may no longer work after.
Verify that the repository is consistent.
Display a list of commands and their purpose.