Git

Scheme

Git is a named VFS connection. The scheme is the connection name:

ops:///workflows/daily.hwf

git:// stays the git protocol a connection uses to fetch a repository. Hop opens a file inside that repository with the connection name.

What you can open

The connection checks the repository out at the branch, tag or commit it names, then serves that working copy as an ordinary folder. A base path moves the root, so a connection whose base path is workflows serves ops:///daily.hwf for the repository file workflows/daily.hwf.

Reading is the point of the driver: a container can run

hop-run.sh ops:///workflows/daily.hwf

with nothing of the project on its disk except the connection.

A write changes only the working copy on disk. Nothing is committed and nothing is pushed. A read-only connection, the default, refuses the write.

Configuration

Create a Git repository connection in the metadata perspective. Install the hop-tech-git-vfs marketplace plugin if it is not in your distribution.

Give the connection a short name that is not already a VFS scheme (file, http, git, zip, …​). Point a deployment at a commit id. A branch moves, and a checkout which was cached against the previous tip is a different folder only after the revision text changes or the connection is told to fetch again.