glenda.party
term% ls -F
term% pwd
$home/manuals/9front/4/hgfs
term% cat index.txt
HGFS(4)                    Kernel Interfaces Manual                    HGFS(4)



NAME
       hgfs - mercurial file system

SYNOPSIS
       hgfs [ -D ] [ -m mtpt ] [ -s service ] [ dir ]

DESCRIPTION
       Mercurial  is a distributed version control system. It tracks and orga‐
       nizes 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 hg(1) program.

       Hgfs serves a mercurial repository as a read-only filesystem where each
       file revision and its metadata is accessible as files.

       The repository may be specified by passing the working directory dir as
       the final argument. When omitted, hgfs locates the repository by waking
       upwards  from the current working directory until the .hg sub-directory
       is found. If no mtpt was specified with -m , then hgfs will  mount  it‐
       self  on  /mnt/hg  (default).  When a service name is given with the -s
       flag, the 9p service pipe /srv/service is created and  may  be  mounted
       from another namespace.  The -D flag enables 9p debug messages.

       The root of the served filesystem contains directories each correspond‐
       ing to a specific changeset revision in the repository.

       Revision directories are named by a revision id which  takes  the  form
       [d.]h,  where d is the decimal revision number starting from 0 and h is
       the hexadecimal hash of the changeset. Both the revision number  d  and
       the  hash  h are able to identify a revision uniquely; only one of them
       needs to be given when walking the root directory. The hexadecimal hash
       may  be  shortened  so long as the resulting lookup yields a unique re‐
       sult. The special name tip corresponds to the latest revision but  does
       not appear in the directory listing.

       In each revision directory the following files can be found:

       rev    contains the revision id of the changeset.

       rev1   contains the parent revision id of the changeset.

       rev2   If the changeset was a merge, contains the other parent revision
              id. Otherwise, a zero size file.

       log    The log file contains a list of file names, separated by a  new‐
              line,  that  where  affected  in  this changeset. Files that are
              listed in the log but are not accessible in the files or changes
              directories have been deleted in this changeset.

       who    committer of the changeset.

       why    commit message of the changeset.

       files  A directory that contains a snapshot of the tree at the time the
              changeset was committed.

              To retrieve the nth past version  of  a  file  relative  to  the
              changeset,  one  can  append .n to the filename. Appending .revn
              yields a file that contains its revision id as text.  Note  that
              appending  .rev0 or .rev yields the file containing the revision
              id of the changeset when the  file  was  last  modified  and  .0
              yields the same file as when omitting the appendix.

       changes
              Same  as  files,  but  contains  only  the  changed files of the
              changeset.

SOURCE
       /sys/src/cmd/hgfs

SEE ALSO
       hg(1)

HISTORY
       Hgfs first appeared in 9front (June, 2011).



                                                                       HGFS(4)