I had many projects on my machine. Some of them were managed by git. After a while, I accidentally lost all of my data. I rarely staeg/commit/pushed my changes to github/gitlab, since i didn't thought someday my machine will broke and all of my efforts will be destroyed! (TBH, i was a lazy man!)
After that tragic event, i decided to stage/commit/push my changes more regularly. But i had still one issue.
I didn't know which projects have staged files or untracked files.(Except that by examining each of them separately)
I wanted a solution that monitor my directories and notify me about latest changes.
So, This is exactly when i created giti.
- You add some git based directories.
- Giti periodically monitor changes in your repos and send system notifications.(every 10 minutes by default. But you can change it or disable it by setting it to 0)
Tip: This application uses libgit2-glib binding in vala language called Ggit to list untracked and staged files.
- Giti can show you Untracked and Staged files in separate tabs.(This will help you to track changes easily)
- You can stage untracked files and also commit staged files by pressing buttons that exist in the bottom of each page.
You can install giti by compiling from source, here's the list of dependencies required:
ninja
meson
vala
gtk+-3.0
libgit2-glib-1.0
gee-0.8
granite
meson build --prefix=/usr
sudo ninja -C build install
And finally, run it:
com.github.linarcx.giti
sudo xbps-install -S giti
https://aur.archlinux.org/packages/giti-git
Notice that, giti uses GLib.Notification internally. So users should install a notification agent
to get notificaitons. (like: notify-osd, ...)
It's a persian word meaning universe:
گیتی یا جهان عبارت است از کل زمان و فضا و محتویات آن که شامل سیارات، اقمار، ریزسیارات، ستارگان، کهکشانها و محتویات فضای میان کهکشانی و در واقع کل ماده و انرژی و هرآنچه به آن مربوط است، میشود.
- Create statistic page that will show all changes in all directories at a glance!
- Remember the theme and default directory. (via: gsettings)
- Revert back latest commit to stage area. (via:
git reset --soft HEAD^
)
- Bitcoin:
13T28Yd37qPtuxwTFPXeG9dWPahwDzWHjy
- Monero:
48VdRG9BNePEcrUr6Vx6sJeVz6EefGq5e2F5S9YV2eJtd5uAwjJ7Afn6YeVTWsw6XGS6mXueLywEea3fBPztUbre2Lhia7e