# FSClient

This is a proof-of-concept "file system client" that uses [Fuse for OS X](https://osxfuse.github.io/) to handle many of the "distracting" tasks of interacting with a Perforce server.
It mirrors an existing Perforce client workspace on your system.
As you add or edit files, we handle running `p4 add` or `p4 edit` in the background.


## Requirements

* OS X, I'm building for 10.10
* osxfuse - see vendor/ directory, but this must be installed before using


## Building

This project uses [CMake](https://cmake.org/). 


## Setup

* Your client _must_ have a `.p4config` file in it's root directory.
* You should execute `p4 login` before using this client
* Right now, this does *not* tweak read-only status. You probably want `allwrite` on your client.

## Running

Typical runtime:

    fsclient -w ACTUAL_WORKSPACE_DIR -m PATH_TO_MIRROR
    
Both locations *must* exist before running. 

If you're done, make sure no app is referencing files in the mirror, then unmount it:

    umount PATH_TO_MIRROR
