plan9fox/sys/man/4/hgfs

132 lines
3 KiB
Plaintext
Raw Normal View History

2011-06-30 02:16:00 +00:00
.TH HGFS 4
.SH NAME
hgfs \- mercurial file system
.SH SYNOPSIS
.B hgfs
[
.B -D
]
[
.B -m
.I mtpt
]
[
.B -s
.I service
]
[
.I dir
]
.SH DESCRIPTION
Mercurial is a distributed version control system. It tracks
and organizes files and keeps a change history of them. The
file revisions are stored as packed deltas in a repository
that can be checked out with the
2011-06-30 02:16:00 +00:00
.IR hg (1)
program.
.I Hgfs
2011-06-30 17:16:26 +00:00
serves a mercurial repository as a read-only filesystem where
2011-06-30 08:47:41 +00:00
each file revision and its metadata is accessible as files.
2011-06-30 02:16:00 +00:00
2011-06-30 17:16:26 +00:00
The repository may be specified by passing the working directory
2011-06-30 08:47:41 +00:00
.I dir
2011-06-30 17:16:26 +00:00
as the final argument. When omitted,
.I hgfs
locates the repository by waking
2011-06-30 08:47:41 +00:00
upwards from the current working directory until the
.B .hg
sub-directory is found. If no
.I mtpt
was specified with
.B -m
2011-06-30 17:16:26 +00:00
,
then hgfs will mount itself on
.B /mnt/hg
2011-06-30 08:47:41 +00:00
(default). When a
.I service
name is given with the
.B -s
2011-06-30 17:16:26 +00:00
flag, the 9p service pipe
2011-06-30 08:47:41 +00:00
.B /srv/\fIservice\fR
2011-06-30 17:16:26 +00:00
is created and may be mounted from another namespace.
2011-06-30 08:47:41 +00:00
The
.B -D
flag enables 9p debug messages.
2011-06-30 02:16:00 +00:00
2011-06-30 08:47:41 +00:00
The root of the served filesystem contains directories each
corresponding to a specific changeset revision in the
repository.
2011-06-30 02:16:00 +00:00
2011-06-30 17:16:26 +00:00
Revision directories are named by a revision id which
takes the form [\fId\fB.\fR]\fIh\fR, where
2011-06-30 08:47:41 +00:00
.I d
is the decimal revision number starting from 0 and
.I h
is the hexadecimal hash of the changeset. Both
2011-06-30 08:47:41 +00:00
the revision number
.I d
and the hash
.I h
2011-06-30 08:47:41 +00:00
are able to identify
2011-06-30 17:16:26 +00:00
a revision uniquely; only one of them needs to be given
2011-06-30 08:47:41 +00:00
when walking the root directory. The hexadecimal hash
may be shortened so long as the resulting lookup yields
2011-06-30 17:16:26 +00:00
a unique result. The special name
2011-06-30 02:16:00 +00:00
.B tip
2011-06-30 17:16:26 +00:00
corresponds to the latest revision but does not appear
in the directory listing.
2011-06-30 02:16:00 +00:00
In each revision directory the following files can be found:
.TP
.B rev
contains the revision id of the changeset.
.TP
.B rev1
contains the parent revision id of the changeset.
.TP
.B rev2
If the changeset was a merge, contains the other parent revision id. Otherwise, a zero size file.
2011-06-30 02:16:00 +00:00
.TP
.B log
The
.B log
file contains a list of file names, separated by a newline, that where
2011-06-30 08:47:41 +00:00
affected in this changeset. Files that are listed in the log
2011-06-30 17:16:26 +00:00
but are not accessible in the
.B files
or
2011-06-30 02:16:00 +00:00
.B changes
2011-06-30 08:47:41 +00:00
directories have been deleted in this changeset.
2011-06-30 02:16:00 +00:00
.TP
.B who
committer of the changeset.
.TP
.B why
commit message of the changeset.
2011-06-30 02:16:00 +00:00
.TP
.B files
2011-06-30 08:47:41 +00:00
A directory that contains a snapshot of the tree at the time
the changeset was committed.
2011-06-30 08:47:41 +00:00
To retrieve the \fIn\fRth
2011-06-30 08:47:41 +00:00
past version of a file relative to the changeset,
one can append \fB.\fIn\fR
to the filename. Appending \fB.rev\fIn\fR yields
a file that contains its revision id as text. Note that
appending \fB.rev\fI0\fR or \fB.rev\fR yields the file containing the
revision id of the changeset when the file was last modified
2011-06-30 17:16:26 +00:00
and \fB.\fI0\fR yields the same file as when omitting the appendix.
.TP
.B changes
Same as
.B files,
2011-06-30 08:47:41 +00:00
but contains only the changed files of the changeset.
.SH SOURCE
.B /sys/src/cmd/hgfs
2011-06-30 02:16:00 +00:00
.SH SEE ALSO
.IR hg (1)
2014-12-18 21:06:25 +00:00
.SH HISTORY
.I Hgfs
first appeared in 9front (June, 2011).