______ ____ ____ _____ _____
/ ___ | / ___| / __ \ | _ || _ |
| (___) || (___ | (__) || | | | | |
\_____ | \_____| \ ____ / |__| |__| |__|
_____/ |
|_______/
A simple command-line tool that helps you find and visualize commits across multiple Git repositories in your workspace. The idea came from missing a commit in a repo I was working on but forgot to push. I forgot both the name of the repo and the commit message. Does this happen to you? If it does, this was my solution. An overly engineered solution for a simple problem. An excuse to read golang docs and learn the language, with the good aid of gpt for illustrations and better understanding. Oh welp, it's a work-in-progress(WIP).
- 🎯 Find commits across multiple repositories in one go
- 📅 Filter commits by time range (today, hours, days)
- 🔄 Track pushed/unpushed commits
- 🎨 Beautiful terminal UI with color-coded output
- 📱 Responsive pager interface for easy navigation
- ⚡ Concurrent repository scanning for speed
- 📁 Recursively scan for Git repositories in subdirectories
-
Clone the repository:
git clone https://github.com/0xdvc/gcom.git
-
Navigate to the project directory:
cd gcom
-
Build the project:
go build -o gcom cmd/gcom/main.go
-
Run the tool:
./gcom
- Go Documentation
- 5 Go Concurrency Patterns I wish I learned earlier
- go-concurrency-patterns
- Git Documentation
MIT License - feel free to use and modify!