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_PREFIX
cd build
make -j8
The git2cpp
executable can then be run, e.g. ./git2cpp -v
.
The CLI is tested using python
. From the top-level directory:
pytest -v
The cockle-deploy
directory contains everything needed to build the local git2cpp
source code as
an Emscripten-forge package and create a local cockle
deployment that runs in a browser.
See the README.md
in the cockle-deploy
directory for further details.