Every repository with this icon (
Every repository with this icon (
Home
GitFS
Section: Devices and Network Interfaces (4)
Index
Return to Main Contents
Name
gitfs – file server for git scm
Synopsis
mount {gitfs srcdir}
[
-m mountpoint
]
[
-c configfile
]
[
-h repository
Description
gitfsis a file server that represents git repository. Git commands are executed by writing them into the
ctl
file. Result of a command is stored in the
data
file.
There’s no "interactive" mode for
git-commit.
Commit message should be written to
ctl
file,
or another file.
command doesn’t have interactive mode yet.
Objects located in objects can be read as ordinary files. Results are the same
as
git-show
Options
- -m mountpoint
-
Mountpoint is point where to mount file server. By default it mounts to /n/git.
- -c configfile
-
Config file that can contain settings for repository.
- -h repository
-
Path to repository. By default it searches for .git directory in the path
from current directory upto the /.
Hierarchy
- /log
-
File that contains log. If you want to use options for git-log
you can write options to ctl file and get results from data file.
This file contains unfiltered log of the repository, i.e. it’s the same
what git-log does by default.
- /tags
-
Directory, which contains tags.
- /config
-
Repository specific configurations are stored in this file.
- /exclude
-
File that contains patterns of file names to exclude from
git-add. - /objects/[0-9a-f][0-9a-f]
-
This directory object store associated with the repository. Each subdirectory contains objects(blobs, tags, trees, commits)
of the repository.
- /files/*
-
This directory contains the files from the srcdir.
- /ctl
-
File that’s used for operating with git. Commands can be send are: commit, gc, add, branch, reset, status, checkout, merge, rm.
- /data
-
Results of executed commands in the
ctlfile are stored here.
Examples
Mount git repository and read the unfiltered log file.
mount {gitfs dir} mntpt
cat mntpt/log
unmount mntpt
The same as above but with filtering and getting log for the last 2 weeks
echo ‘log —since=2 weeks ago’ > ctl
cat git_repo/data
Source
See also
Bugs







