Docs / How-to guides

Use git on a Shared Folder

The repo stays on one machine. You work on it from the other.

What works

git status, fetch, checkout, commit, clone, and git-lfs all run directly on the mount. This is tested hard: repositories cloned on one machine and driven from the other, including LFS objects, come across byte-for-byte intact. Only the bytes git actually reads cross the network.

Work on a repo that lives on the other machine

The repo is on your desktop; you are on your laptop. Connect, then:

cd ~/KeibiDrop/Mount/projects/my-repo
git status
git checkout -b feature
# edit, build, commit
git commit -am "wip"
git push

Good for a build machine you drive from a thin laptop, or for reviewing a teammate's working tree without a push.

Clone through the mount

To get an independent local copy, clone out of the mount onto your own disk:

git clone ~/KeibiDrop/Mount/projects/my-repo ~/work/my-repo

The clone streams exactly the objects git reads. From then on, your copy is yours; use normal git remotes to exchange work.

The two rules

Keep live_collab off on machines that run git on the mount. The default is off and is git-safe. Turning it on (a macOS document-collaboration option) can corrupt files git writes through mmap, such as its index. See the configuration reference.

One machine runs git in a working tree at a time. There are no locks between peers. Two people running git simultaneously in the same working tree can race each other's .git updates. Take turns, or clone and use push/pull like any two git users.

If something looks wrong