This is a C++ wrapper of libgit2 to provide a command-line interface (CLI) to git functionality. The intended use is in WebAssembly in-browser terminals (see cockle and JupyterLite terminal projects) but it can be compiled and used on any POSIX-compliant system.
See overview.md for further details.
Developer's workflow using micromamba to manage the dependencies:
micromamba create -f dev-environment.yml micromamba activate git2cpp-dev cmake -Bbuild -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIXcd build make -j8The git2cpp executable can then be run, e.g. ./git2cpp -v.
The CLI is tested using python. From the top-level directory:
pytest -vThe wasm directory contains everything needed to build the local git2cpp source code as an WebAssembly Emscripten-forge package, create local cockle and JupyterLite terminal deployments that run in a browser, and test the WebAssembly build.
See the README.md in the wasm directory for further details.