Crates.io | git-mob-tool |
lib.rs | git-mob-tool |
version | 1.6.2 |
source | src |
created_at | 2023-03-31 16:33:18.64862 |
updated_at | 2024-04-19 11:44:38.403226 |
description | A CLI app which can help users automatically add co-author(s) to git commits for pair/mob programming |
homepage | |
repository | https://github.com/Mubashwer/git-mob |
max_upload_size | |
id | 826562 |
size | 93,112 |
git mob
CLI app to help you automatically add Co-authored-by trailers to git commits during pair/mob programming
You can attribute a git commit to more than one author by adding one or more Co-authored-by
trailers to the commit's message. Co-authored commits are visible on GitHub. For more information, see here.
This CLI app will help you add them automatically and also help you store and manage co-authors for pair/mob programming sessions.
Co-authored-by
trailers to commitDownload and extract the appropriate binary depending on your OS from the latest GitHub release
Ensure the binary is in your PATH
variable e.g. you may place the file in C:\Windows
on Windows or /usr/local/bin
on Linux and macOS
Ensure the binary is set as executable (Linux and macOS)
$ chmod +x ./git-mob
$ cargo install git-mob-tool
Set up a global prepare-commit-msg
githook which appends the Co-authored-by
trailers to the commit message.
$ git mob setup --global
If a repository overrides core.hooksPath
git configuration variable (e.g when using husky), then you will additionally need to run git mob setup --local
for each such repository. This will set up a local (repository-specific) prepare-commit-msg
githook which invokes the global one.
If you prefer to set this up manually or encounter any issues with the automated setup process, you can follow steps outlined here.
Store your team members' details with keys
$ git mob coauthor --add lm "Leo Messi" leo.messi@example.com
$ git mob coauthor --add em "Emi Martinez" emi.martinez@example.com
$ git mob coauthor --add sa "Sergio Aguero" sergio.aguero@example.com
To mob with some team member(s):
$ git mob --with
? Select active co-author(s):
> [ ] Leo Messi <leo.messi@example.com>
[ ] Emi Martinez <emi.martinez@example.com>
[ ] Sergio Aguero <sergio.aguero@example.com>
[↑↓ to move, space to select one, → to all, ← to none, type to filter ]
Alternatively, if you remember the co-author keys, you may bypass the multi-select menu by running:
$ git mob --with lm em
This will start a global mob session. Any git commit made afterwards will have Co-authored-by
trailers added to the commit message as shown below:
This is an example commit message
Co-authored-by: Leo Messi <leo.messi@example.com>
Co-authored-by: Emi Martinez <emi.martinez@example.com>
To clear the mob session:
$ git mob --clear
To view the co-authors in the current mob session:
$ git mob --list
To print help information:
$ git mob help
$ git mob help coauthor
git mob --help
, an error may occur because Git looks for man pages for subcommands. To avoid this error, use one of the following alternatives:
git mob help
git-mob --help