#git-repository #git #cli #autocommit

app git_afk

git_afk watches your git repositories for uncommitted changes and automatically commits/pushes them

4 releases (2 breaking)

0.3.1 Nov 24, 2024
0.3.0 Nov 21, 2024
0.2.0 Nov 18, 2024
0.1.0 Nov 18, 2024

#869 in Command line utilities

Download history 219/week @ 2024-11-15 163/week @ 2024-11-22 12/week @ 2024-11-29 2/week @ 2024-12-06

396 downloads per month

MIT license

21KB
425 lines

git_afk

git_afk is a file watcher that should live as a daemon on the system to watch, commit, and push uncommited changes after a debounce time.

Motivation

Watch the selected repositories for changes in the worktree. If the changes in the worktree are not changed for predefined debounce time, it should if possible commit changes with specific commit message and try to push them. If the commit or the push fails. We can just reset the timer.

Installation

You can either download latest binaries from github releases and put them into ~/.local/bin/ or /usr/local/bin/ or anywhere into your $PATH.

Second option is to install with cargo: cargo install git_afk

Running as a daemon

For the best convenience it is recommended to run the git_afk watch as a daemon on your system.

Linux

Copy this git_afk.service file to your services folders e.g. ~/.config/systemd/user/

[Unit]
Description=git_afk

[Service]
ExecStart=git_afk watch

[Install]
WantedBy=default.target

Other systems

Create a launchd configuration file for your app. This involves creating a new file in /Library/LaunchAgents/ with a .plist extension, containing the necessary details like the executable path and startup order.

I am not able to compile/test functionality on other systems. I would recommend using launchd. Feel free to open issues/pull requests for additional functionality on other platforms.

Dependencies

~9–19MB
~246K SLoC