bin+lib nabu

Keep your work commited and your repository up-to-date!

6 releases

0.0.5 Mar 27, 2022
0.0.5-rc0 Mar 17, 2022

#2151 in Command line utilities


515 lines

Nabu 𒀭𒀝

Nabu was the patron god of scribes, literacy, and wisdom. He was also the inventor of writing, a divine scribe...

$ cargo install nabu

Nabu's job is to keep your work commited; in other words, it brings Dura to the foreground.

It watches over your files and when it detects changes, Nabu will stage and commit them to your repository.

Get started

Watch over a directory.

$ nabu watch <directory>

Watch over a directory and its children (recursively).

$ nabu watch -r <directory>

Push on exit

To push on exit you need to declare the --push-on-exit flag and an authentication method (i.e. --ssh-agent or --ssh-key).

Using the SSH agent

Using the ssh-agent method is very simple, you simply need to ensure that the ssh-agent is running and declare the --ssh-agent flag.

Push on exit using the SSH agent.

$ nabu watch --push-on-exit --ssh-agent .

Using your SSH key

To use the SSH key you need to declare the --ssh-key pointing to the SSH key associated with your git account. In the case your passphrase is not empty, you can use the --ssh-passphrase to declare it.

Push on exit using the provided SSH key (assumes the passphrase is empty).

$ nabu watch --push-on-exit --ssh-key "~/.ssh/id.rsa" .

Push on exit using the provided SSH key & passphrase.

$ nabu watch --push-on-exit --ssh-key "~/.ssh/id.rsa" --ssh-passphrase "very_secret_passphrase" .


Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.


~522K SLoC