moved to https://gitlab.com/mb-saces/hidefs
- Go 100%
|
|
||
|---|---|---|
| goutensil | ||
| internal | ||
| .gitignore | ||
| config.go | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| README.adoc | ||
## hidefs
Simple bind mount, but hides some files.
A fuse filesystem written in go
---
If the projects use different vcs or different tooling sharing code beetween projects or local overwrite dependencies can be <censored>. +
Local overrides can be committed, git submodules are error prone if you are not aware of them, and so on.
I just want a proper plan9'ish file system view… +
So I need a filtering bind mount, didn't find one I wanted to use and created this project.
Its a bind mount that can hide files like you configured it, f.e. `.git` directories or `go.mod` files. Non-regular files are automatically hidden.
---
Install:
----
go install https://gitlab.com/mb-saces/hidefs
----
From Source:
----
mkdir hidefs
cd hidefs
git clone https://gitlab.com/mb-saces/hidefs .
go build .
----
Usage:
----
hidefs configfile.yaml
----
Unmount all mounts:
----
hidefs -u configfile.yaml
----
example config:
[source,yaml]
----
HideFSConfig:
- Name: OptionalNameForDebuggingPurposes
HideNames:
- name1
- name2
SourceDir: /path/to/source/dir
TargetDirs:
- /path/to/target/dir
- Name: AnOtherOptionalNameForDebuggingPurposes
HideNames:
- name1
- name2
SourceDir: /path/to/source/dir2
TargetDirs:
- /path/to/target/dir1
- /path/to/target/dir2
----
example systemd service unit:
[source]
----
[Unit]
Description=Hidefs File Hiding Service
[Service]
Type=simple
ExecStart=/path/to/hidefs /path/to/config.yaml
ExecStop=/path/to/hidefs -u /path/to/config.yaml
[Install]
WantedBy=default.target
----