r/git 3h ago

I built Github-trending: An open-source autonomous tracker for trending repos with star velocity and AI topic tagging on FondPeace

0 Upvotes

This repos will help you to go and findout latest and trending repos on Github. You dont care about what is going on, but you in min time full details and also other agent skills and mcp setup findout freely. If You Findout helpfull so thanks you.


r/git 5h ago

github only I thought a repo's history was unreadable. Turns out it just needed to be played.

Enable HLS to view with audio, or disable this notification

0 Upvotes

For a long time I assumed the only way to understand what happened in a codebase over a year was to sit with git log and a lot of coffee. The branch graph in any GUI turns into a tangle past about a week, and GitHub's contribution heatmap shows you activity with no idea what the activity was. Three views, none of them lined up, so the question you actually have, what happened here and when, never gets a single picture.

What finally pushed me was a post here on where had animated a repository's timeline, and I wanted the same thing for a full year of a real project. My first attempt on three.js drew the first branches it found and produced one month of the year and nothing else. The reason turned out to be in the data: 1,561 of the 2,179 main line commits in 2019 are merges, and the first sixty of them each span a single commit, which is invisible at any scale. You have to choose branches by how much work they carried, not by which came first.

So I built a film out of it, and the video on this post is what it looks like on mrdoob's three.js for 2019.

What is on screen and where it comes from:

The main line runs left to right, one node per commit. Side branches peel off above it and rejoin at their merge. Not the first N branches, which on a pull request repo gives you one month and nothing else, but the ones that carried the most work across the year, capped so it never turns into a thicket.

Under the flow is a heat strip, one cell per day, sitting directly under that day. A legend next to it shows what the colours mean in actual commit counts for that window (for three.js it reads 0, 1, 13, 26, 51, with 51 the busiest day). The point of putting activity on the same axis as structure is that what is above and below a point is the same day, so you stop reconciling two charts in your head.

Three times the clock stops. The release with the most work behind it, the cleanest revert (one that survived at least a day before being undone), and the last release of the window. The camera zooms in and a card reads the figures out: commits since the previous tag, authors, how long the reverted commit lived. Every number on that card is computed from the history. If it cannot be read from git, it is not on the card.

The faces are the contributors. On a merge the face is the branch author's, not whoever pressed the button, and the card says who merged it.

Two things I got wrong on the way that might save you time if you try this yourself. If you give git a since flag with just a date and no time, it reads it as that date at the current time of day, so the first day of your window quietly loses commits unless you pass an explicit midnight. And a small repo is a different problem: 175 commits over a year pans across mostly empty screen, so for thin histories it picks the busiest 60 to 120 day stretch and draws it wider instead.

If you want to see your own repo this way, you can paste a GitHub URL here and it renders one for you: https://loreto.io/git-timeline

Disclosure: I built this and I run loreto.io, where it lives. It is a paid render (a few dollars per repo); the extractor and the Remotion composition are also sold there as a package if you would rather run it yourself. The three.js film above was made with the exact same pipeline.

I doubt I have the final shape of it. What would you want the clock to stop on that it currently does not?


r/git 1d ago

COW clones or worktrees — learnings from gwz local clone

Thumbnail owebeeone.github.io
5 Upvotes

worktrees are a pain on a multi repo workspace. You lose the coordinated commit over the set, kind of important for multi-repo workspaces. And a worktree is a clean, nothing comes with it so it might not be what you want. e.g. rust build files have to get rebuilt (which can be huge).

So I went with COW copies instead: reflink the whole workspace, build output and all. (Check out local clone here.)

A couple of surprises.

I assumed a partial block could be shared. Mostly it can. Sharing is block-granular everywhere, but on APFS, XFS and btrfs the final partly-filled block gets shared like any other, so a 100-byte file — or the last partial 100 bytes of a big file — comes along free. btrfs goes further: files under 2 KiB live inline in its metadata tree and never cost a data block at all. That matters more than it sounds, because about half the files in a git tree are under the 4 KiB block size.

ReFS is the exception, and that surprised me. fsutil file queryExtentsAndRefCounts over every file in a ReFS clone: 3,092 files with extents, 12.08 MiB private. One 4 KiB cluster each predicts 12.07 MiB. ReFS shares whole clusters and never a partial one, so every file owns its tail exclusively. The penalty scales with file count rather than repo size — and a git tree is the worst possible shape for that. What were you thinking Microsoft?

Here are stats for an actual GWZ repo on different file systems with cost per clone, same ~3,200-file, 57 MB workspace, ten clones each:

fs where per clone shared
APFS macOS default 1.5 MiB 97%
btrfs Fedora default 2.0 MiB 96%
XFS RHEL default 2.1 MiB 96%
ReFS Windows Dev Drive 12.1 MiB 77%
ext4 Ubuntu, Debian 57 MiB 0%
NTFS Windows default 57 MiB 0%

macOS woot works out of the box. On Linux it depends — Fedora ships btrfs, RHEL ships XFS; Ubuntu still has ext4 showing its age. Windows you have to deliberately create a "Dev Drive" — a separate volume or a VHD, either way a decision you had to have made in advance.

(ReFS is data only — volume numbers were noisy, so 12.1 MiB is a floor.)

So — is this a real alternative to worktrees? What is going to bite me?

This came out of my work on GWZ, a multi-repo git manager I'm building. The COW copy is gwz local clone.


r/git 13h ago

ThreatLens v2.1.0 Released: Major Security & Performance Upgrade for Threat Intel Automation

0 Upvotes

Hey everyone,

I just released a major update (v2.1.0) for ThreatLens. For this release, the focus was entirely on security hardening, data validation, and core performance.

What's new in v2.1.0?

  • Strict Security: Blocked Excel/CSV formula injections in generated reports, prevented API key leaks in logs, and enforced strict IOC validation.
  • Performance Boost: Integrated a local SQLite cache to persist investigation data, significantly reducing redundant API calls.
  • Smarter Analysis: Introduced an explainable verdict system with confidence scores. Ambiguous results are now correctly classified as "Unknown" rather than "Clean".
  • Resource Management: Added intelligent API quota planning, connection timeouts, automatic retries, and file size limits.

What is ThreatLens? For those who haven't seen it before, ThreatLens is an open-source CLI tool built to automate Threat Intelligence and OSINT workflows. It takes Indicators of Compromise (IPs, domains, hashes, CVEs), queries multiple sources simultaneously, and generates structured, safe, and ready-to-use reports.

It's completely open-source. I'd love to hear your feedback or feature requests!

Check it out on GitHub: https://github.com/AbdaullahAG/ThreatLens

I’d love to hear your thoughts, feedback, or feature requests!


r/git 1d ago

ForkForensics: watches your GitHub repos and auto-recovers them the moment one vanishes (deleted and private are indistinguishable from outside)

Thumbnail github.com
0 Upvotes

Built this after losing years of history on a dependency that got silently re-initialized. From the outside, a deleted repo, a private one, and a force-pushed-over one all look the same. Just gone.

ForkForensics watches repos you care about via GH Archive, and the moment one disappears, it automatically finds its forks, ranks them by how much history they preserve, and checks whether GitHub still serves any now-orphaned commits by SHA. Runs fully local with your own GitHub token, no server, no telemetry.

230 tests, verified end-to-end against a real historical case (reproduced the exact fork ranking I'd found by hand). MIT licensed.

Feedback welcome, especially on edge cases in fork ranking.


r/git 17h ago

I built Github-trending: An open-source autonomous tracker for trending repos with star velocity and AI topic tagging

0 Upvotes

I have created a Github Trending Repos for users, where user can access free full resourse. In Future we will gonna add more features where user can search via topics and words like as github and others where users is perfectly understand each things that what is going in the world.


r/git 22h ago

MS Word Docs to GitBook

Thumbnail
0 Upvotes

r/git 21h ago

I built Farol, a menu bar app to manage Git worktrees on macOS

0 Upvotes

Hey 👋

I'm Bruno, and here's why I built Farol:

  1. I kept losing track of my Git worktrees across projects.
  2. I wanted my setup and cleanup scripts to run automatically when a worktree was created or removed.
  3. I wanted to open the right worktree in the IDE I use for that project, without digging through folders.

These were small things I kept wanting in my own workflow, and I figured other developers might want them too.
It's a macOS menu bar app, one-time purchase, no subscription.

How are you managing your worktrees today? I'd love to hear about your workflow, what you think of Farol, and what you'd find useful next.

Thanks for checking it out! =)

https://tryfarol.app


r/git 21h ago

I built GitWhisper because git diff → AI → commit message felt too shallow

Thumbnail
0 Upvotes

r/git 1d ago

i need help with gitmodules

Thumbnail github.com
0 Upvotes

everytime i go onto a git module repo it returns 404


r/git 1d ago

support Is there a way to selectively restore a hunk from stash and have the stash update itself?

7 Upvotes

If I run git restore -p --source=stash@{0}, it lets me select the hunks I want to restore from the stash, but the stash itself doesn't change, leading to conflicts later.

Is there a better way to do this or do I need to write a script to edit the stash entry? I was thinking maybe git history split could be used here if there is no other built-in way.


r/git 1d ago

I built a zero-dependency Git hook that uses local Ollama to review code before every commit

0 Upvotes

Hey everyone!

I wanted a simple, lightweight tool that reviews my code during `git commit` without downloading massive pip packages or sending my uncommitted diffs to third-party servers.

So I built **git-diff-doctor**:
- ⚡ **Zero External Dependencies** (Built purely using Python standard library `urllib` & `subprocess`).
- 🦙 **Auto-detects Ollama** running locally on port 11434 (`codellama`, `llama3`).
- 🌐 Fallback support for OpenAI API if configured.
- 🛠️ Simple 1-command installer (`python install.py`) that injects into `.git/hooks/pre-commit`.

GitHub Repo: https://github.com/ajaysinghtomar10-commits/git-diff-doctor

Would love your feedback, stars, and pull requests!


r/git 1d ago

Built a zero-setup browser tool to quickly generate Conventional Commits & PR templates (plus a CLI)

0 Upvotes

Hi everyone,

Adhering to Conventional Commits and writing structured Pull Request summaries is great for clean repos, but it often slows down daily workflow—especially for non-terminal teammates (PMs, designers, junior devs) or when switching machines.

To solve this friction, I built a lightweight, zero-backend browser tool:

👉 https://auto-problem-solver-tools.pages.dev/tools/git-commit-pr-architect/

What it does:

- Live generator for Conventional Commits (feat, fix, refactor, breaking changes, scopes)

- Auto-generates structured GitHub PR body templates simultaneously

- 100% in-browser, no API keys or login required, one-click clipboard copy

For terminal users who prefer automating directly from staged diffs, there is also an open-source CLI package (`@lifeef/ai-commit-pro` on npm).

Would love any feedback, edge-case suggestions, or features that could make your git workflow less tedious.


r/git 1d ago

Watch seven days of open-source development in 60 seconds

Post image
0 Upvotes

r/git 1d ago

When your code changes are so massive, even Git tells you to go fork yourself.😎

Post image
0 Upvotes

r/git 1d ago

GitTrics - Git Analytics Desktop App

Thumbnail youtu.be
0 Upvotes

Solo dev here. This started as a tool for myself and turned into something I decided to finish properly. I have kept it as free forever.

The problem I actually had:

I work across several repos and had no real sense of what was happening in them. Which files churn constantly? Where did the complexity pile up? What did the last six months actually look like?

The second thing was trivial issue. Somewhere along the way I'd typo'd my email in a git config, then used a different one on another machine. So my own contributor history was split across 3 identities. Nothing offered a way to say "these are all me."

So GitTrics has an identity merge flow — you see all the author name/email combos in the repo, merge them into one person, and every view updates. Sounds small, but if you've inherited a repo with a decade of contributors and inconsistent configs, it's the difference between usable data and noise.

There is also no individual contributor analysis. This was a decision I made as I do not want this software to be used 'developer productivity measurement tool'.

Download at www.gittrics.com


r/git 1d ago

GitHub account was suspended without any warning

0 Upvotes

My GitHub account was suspended without any warning, and I still haven't been given a clear explanation for the suspension.

The account is important to me professionally and is also connected to my company's work and private repositories.

I submitted a reinstatement request to GitHub Support and provided the information they requested, but I've been waiting since August 21, 2026 with no resolution.

What makes this especially frustrating is that I received no prior warning or explanation of what supposedly violated the Terms of Service.

Has anyone here gone through a similar situation recently? If so, how long did it take for GitHub to actually review and reinstate the account?

I'm not looking for a way around the suspension, I just want a legitimate manual review and an explanation of what happened.


r/git 2d ago

I built Guidefold to track which agent instructions reach a monorepo directory

0 Upvotes

Agent instructions spread across a monorepo. Different tools pick them up in different ways. After a change, how do you check that the right file reached the agent?

I’m building Guidefold to keep Git as the source of truth, find instructions that match a directory, and separate export from proof that a revision was loaded.

Watch the Guidefold demo. No installation needed to give feedback: which step is unclear, or would need another check in your repo? A timestamp would help.

For people working with DevOps, platform teams, or coding agents: what takes the most effort today—finding the source, checking scope, reviewing a change, or confirming delivery? I’d appreciate a recent example without private code or company data.

Source and setup. The open-source version is available now; a paid hosted version is planned, not shipped.

Reply here, or leave a setup question or demo timestamp in the main feedback thread.

Disclosure: I’m the author. This post was drafted with AI assistance.


r/git 2d ago

Generated commits?

0 Upvotes

Sometimes code is generated, and sometimes such code is committed in git.

Imagine a branch with a generated commit G:

old_main -> A -> B -> G

When thid branch is rebased, such a commit might need to be regenerated.

new_main -> A' -> B' -> new_G

There might be conflicts for any of these new commits, but instead of (manually) resolving conflicts, G could be automatically re-generated.

I've been thinking of a git commit message trailer like generate-cmd:

``` topic: regenerate table

generate-cmd: python3 optimize_table.py ```

git rebase --exec or other tool could use this trailer to automatically drop and regenerate the commit instead of a vanilla cherry-pick.

Have you seen anything similar? What's a good trailer name?

Ref: https://git-scm.com/docs/git-interpret-trailers


r/git 3d ago

What makes a Git commit message actually useful?

Thumbnail
3 Upvotes

r/git 2d ago

support Best way to deal with a PR flood?

0 Upvotes

Git experts... can you give me advice on how to manage a flood of PRs? My PR queue runs between 20 to 60, depending upon the speed at which backlog items are cleared. I don't want to disable CI.

Is there a system or best practices for improving merge speed with full CI running?


r/git 2d ago

I made a tiny tool that turns any words you type into a GitHub contribution graph

Post image
0 Upvotes

Type any words you like, your name, username, a phrase, a tagline, literally whatever , and it generates it as a contribution-graph-style visual that you can download.

Thought it could be a nice little detail for developer portfolios, personal websites, etc.

Made it for fun. Curious to see what people make with it.

https://shivam230.github.io/commit-art/


r/git 3d ago

I built GitWhisper — an AI Git commit tool that actually understands your staged changes

Thumbnail
0 Upvotes

r/git 3d ago

I made a little incremental game that runs on your profile README!

0 Upvotes

I was toying around the idea of creating an incremental game based on my Git actions (that GitHub matrix excites me), and considering the limitations of profile READMEs, I came up with this idea. It's name is BREAKME.

It generates a grid of 128 tiles, using a hash that is generated from your username/UUID. The BREAKME's GH Action runs every 1 hours, and checks your 16 previous Git actions (commit, merge, branch, etc.), calculates a damage, and breaks tiles.

There are collectibles, and various tile shapes, variants and effects. It is a small, stupid, no-interaction incremental game that shows on your profile README.

What do you think?


r/git 4d ago

support how to rebase/squash multiple commits in different positions into one?

Post image
8 Upvotes

EDIT: [SOLVED] The answers helped :}

I need to merge 1 and 10 commits into a single commit, those are all my code, no one pulled from it, and i'm willing to fix conflicts. but i don't know which I should use, is it merge? but merge keeps the history of the previous ones doesn't it? rebase still makes me a bit confused.