Workspace
A workspace tracks git repositories without relying on git submodules. Inside a workspace you can use the usual every day git-operations through bob with visually enhanced output for the multi-repo case.
info
In case of a monorepo you can just ignore workspaces.
Init
Create a Workspace
bob workspace init
creates a .bob.workspace
file in your current dir. This file should be under version control.
Add - Track git repository
To add repositories to a workspace use the add
cmd.
bob workspace add git@github.com:Benchkram/bob.git
It adds a repository to the workspace. Clone it to your local machine using
bob clone
this will create a directory named after the repository.
Clone
Clone can be used like plain git clone
.
bob clone git@github.com:Benchkram/bob.git
In case the repository contains a *.bob.workspace. file it clones them recursively.
You can also run
bob clone
directly in a repository containing a .bob.workspace
file. It will clone all tracked repositories.
Status
An example of bob git status
in a workspace.
Highlighted directories indicate child Git repositories and therefore bob git add
and bob git commit
will only operate on the repository a file belongs to allowing to create repository overlapping commits all together.
caution
Only bob git status
and bob clone
are currently implemented