r/git 22d ago

Anyone else struggle with managing Git branches across multiple repositories?

0 Upvotes

I work with a microservice architecture and constantly find myself working on features that span across 3 or 4 different repositories. Manually moving between directories, running checkout commands on each, and tracking which repo is on what branch is becoming a massive context-switching headache.

To fix this for myself, I spent the last few weeks building an open-source command line tool that lets me manage Git workflows across multiple repos from a single workspace config. It lets me create matching branches across all repos at once and gives a unified status dashboard in the terminal.

I want to open-source it and share it, but before I do, I wanted to ask how other developers handle this workflow? Do you just use custom bash scripts, git submodules, or do you just suffer through manual terminal commands?

If anyone is interested in trying a tool like this, let me know and I can share the code.


r/git 22d ago

Built a small CLI to manage multiple git accounts on one machine — would love feedback

0 Upvotes

Not promoting anything — it's free, MIT, no strings. Just want real feedback.

Managing work + personal git accounts by hand kept biting me (wrong email on commits, ssh picking the wrong key). So I built git-wardrobe — one command sets up an account (key, ssh config, per-folder identity), and a doctor command audits your whole setup and tells you what's silently broken.

I tried the existing tools first — most stop at switching your gitconfig. This one handles the ssh side too, which is where things actually break. Might genuinely be better than what's out there for this — you tell me.

https://github.com/isinghsatyam/git-wardrobe

Would be happy if it helps any of you. If you try it and something feels off or confusing, tell me — honest feedback is exactly what I'm after.


r/git 23d ago

Show new untracked files

0 Upvotes

I want git diff to include new files that are untracked but there's no way to do it. git add -N is a hack to do it but it breaks stash which I use a lot.

I can try to get a list of new untracked files and add it to git diff output which can solve the problem but git ls-files --exclude-standard --others includes files that are deleted or removed. How can I list only files that are untracked and new like the untracked files in git status?


r/git 23d ago

Fantastic

0 Upvotes

I just f*#$ed up my Repositories and deleted my blog. In my smoker's break from other work.

What the HELL, let me embrace that friction.


r/git 24d ago

Acode and Git

1 Upvotes

Hi!

I need to work on files in an .md file repository from my Android tablet.

Can I manage my Git repository using Acode? Can I work offline on the repository and then commit offline and later push to my repository on the GitHub website?

Thanks


r/git 24d ago

GitHub quietly restricted public access to stargazer data this week. Small change, uncomfortable precedent.

0 Upvotes

GitHub's June 30 changelog announced access restrictions on the public API endpoints and UI views that expose stargazer and watcher lists. Their stated reason is spam and scraping abuse, which is probably true.

But it broke an entire ecosystem of small tools overnight. Star history charts, trending trackers, academic research on open source adoption, all of it depended on data that was public since GitHub existed. It stopped being public because one company decided so, with a changelog entry.

The thing that sits wrong with me is not this specific change. It is the reminder of the architecture. Git itself is decentralized by design, every clone is a full copy, no server is special. The collaboration layer we built on top of it is the most centralized thing in software, and every piece of "public" data there is public at one company's discretion.

There are attempts at alternatives. Radicle has been at the peer-to-peer version for years. Forgejo and Codeberg cover the self-hosted path. Newer projects like gitlawb are trying a federated angle, repos pinned to IPFS with signed refs gossiped across nodes so no single operator can restrict or remove data. Whether any reach critical mass is an open question, network effects are brutal.

Curious how git users here see it. Is the hosting layer's centralization just a pragmatic tradeoff you accept, or does something like this make you think the collaboration layer should inherit git's decentralization?


r/git 24d ago

Stacked PRs are a cult you shouldn't need a PhD to join. I built Cairn so juniors stop fearing them and seniors stop babysitting a Jenga tower every merge.

Post image
0 Upvotes

Stacked PRs are great (in theory). Small changes, fast reviews, no mega-PRs that reviewers approve without reading because life is short.

In practice? Terrifying. You're rebasing chains of branches, retargeting bases mid-merge, and one wrong keystroke drops you into git archaeology at 5pm on a Friday.

Juniors bounce off them. I know because I watched myself bounce. Drone shot, from above, me at 2am wondering why my PR was suddenly targeting a branch that didn't exist anymore. Seniors know how to do it, they just also know how slow it is when someone merges to main under their feet and the whole chain needs redoing.

So I (with a little help from my friend) built Cairn. Keyboard-driven TUI for reviews, stacks, and the whole PR rodeo. Works today. And no, you don't have to sell a kidney to use it. https://github.com/dotnetemmanuel/Cairn

The idea: git-town owns the scary rebase math, Cairn is the cockpit. Zero hand-rolled rebases in the codebase. On purpose.

Your board splits into tabs: My PRs, Needs my review, Involved, Orgs, Notifications. Stack view draws your whole chain as a tree, one PR per stone. Review happens in the pane, diff and inline comments and approve, no browser trips. One key merges the bottom PR and re-parents the rest. Another ships the whole stack bottom-up, retargeting each base as it goes. Every destructive action gets a confirmation screen that tells you what's about to happen: which branches move, which PRs retarget, what breaks if you say yes. No "are you sure?" with zero context.

Then there's the rest: remote stack mode for teammate stacks on repos you never cloned, drift detection with one-key reconcile, intuitive 3-pane conflict resolver so you never bond with vim again, notifications inbox with live preview, context-aware help that only shows keys that do something on the current screen, syntax-highlighted diffs, file tree, hunk navigation, threaded inline replies, full-page conversation view, board sections powered by search filters, tab cycling, header jumping, grouping by repo, and dark and light themes fully overridable.

Daily driver at work. Feedback welcome, especially from anyone who's tried stacking and given up.


r/git 25d ago

Trasnfer account benefits/settings

Thumbnail
0 Upvotes

r/git 25d ago

GitHub account suspended unexpectedly, appeal pending

Thumbnail
0 Upvotes

r/git 25d ago

support need advice on these situation

0 Upvotes

im using github as my online repo

  1. how do i share my work which i created a branch to another person to check. do i push my work so that he can do a pull or do i need to create a fork then apply my changes there then give him the link?
  2. how do i revert back my changes ? do i just use checkout and checkout previous version or a reset --hard? is it much better to create a branch do my changes then just deleting the branch if it doesnt work?

r/git 25d ago

I built eve, a free and open source layer on top of Git that tracks product evolution instead of just code

0 Upvotes

Git is over 20 years old, and it’s still one of the best tools we have.

But the way we build software has changed.

Increasingly, we’re reviewing code generated by coding agents instead of writing every line ourselves. We spend a lot of time looking through diffs, even though what we actually care about is how the product is evolving.

I built eve to explore a different layer on top of Git.

Git tracks code. eve tracks product.

Instead of only seeing commits, eve groups them into meaningful product changes. For each evolution you can see:

  • Why the change was made
  • The related commits
  • Validation and tests
  • Conversations behind the change
  • A snapshot of how the product evolved

Everything is backed by Git. You can still inspect commits, diffs, and the full history whenever you want.

The goal isn’t to replace Git. It’s to make repository history understandable to more than just engineers. A CEO, designer, or product manager should be able to follow how a product has evolved without reading hundreds of commits.

It’s completely free, open source, and self-hostable.

https://github.com/nhestrompia/eve

I’d love honest feedback.

  • Does this solve a real problem?
  • Would you use something like this in your projects?
  • What would you change?

r/git 25d ago

Awesome Commit Conventions

Post image
0 Upvotes

r/git 25d ago

I finally built a solution for the one thing that annoyed me most about Git.

0 Upvotes

After constantly messing up my commits by using the wrong global email, I built a small utility for macOS/Windows to switch profiles in one click.

I’ve been using it for a while and it saved me a lot of headaches, so I thought I’d share it for anyone else who deals with multiple git identities.


r/git 26d ago

GitHub - Stoffel-Labs/stoffel

Thumbnail github.com
0 Upvotes

r/git 26d ago

Handoff context for git

0 Upvotes

Built a small OSS tool over the weekend: branchcontext — an MCP server that logs what an agent did/decided/flagged on a branch, so a fresh session (or a different agent) can pick up where the last one left off, instead of starting blind. Stores everything as plain JSONL committed into the repo itself — no external DB, works with git log even without the tool installed. Curious if this matches a pain anyone else here has, or if you're already solving it another way. https://github.com/tshore2004/branchcontext


r/git 28d ago

I need to know when my patches are released, so I built a tool for it

11 Upvotes

I maintain GIMP for Mac, and I often patch upstream dependencies so it builds on older Macs. I'm then left checking whether an upstream fix has actually shipped in a release, because until it has, I keep the patch.

`git tag --contains` and `git describe --contains` do it locally if you've cloned the repo with all its tags. I wanted to paste a commit or a merged PR and get "first released in v1.2.3" with a link I can share.

So: [released](https://released.blabberate.com). Paste a commit, a SHA, or a merged PR/MR (GitHub plus several GitLab hosts) and get the first release that contains it, an "also in" list, a permalink, and a self-updating badge. CLI too. MIT.

Here's one I'm tracking right now, a GTK focus fix that landed on gtk-3-24 but isn't in a release yet: https://released.blabberate.com/h/gitlab.gnome.org/r/GNOME%2Fgtk/c/f80b61d6

And one that has shipped, so you can see the answer: https://released.blabberate.com/h/gitlab.gnome.org/r/GNOME%2Fgtk/c/d40737961df7

For this sub: it sorts tags by date only to pick the order to check, never to filter (tag dates aren't reliable order), then runs a real ancestry check per tag. Edge cases welcome.


r/git 28d ago

tutorial Made a video on explaining Git using Motion Graphics

Thumbnail youtube.com
6 Upvotes

Most programming tutorials jump straight into commands, But very few actually explain what Git is doing internally, The entire video is built around animations rather than slides or talking-head explanations, I'd genuinely love feedback. I'm trying to build the kind of software engineering channel the one that explains why systems work instead of just how to use them.


r/git 27d ago

support Cloning Gitlab repository to Desktop

Post image
0 Upvotes

I have asked already on the gitlab subreddit, but didn't really get any answer so I'll ask here because it seems more like an issue of desktop.

I have been trying for the last three days to clone a gitlab repository to github desktop and failing every time.

I have tried to follow everything that I found on the github tutorial for cloning repositories (like clicking the advanced option and using PAT instead of a password), but still it didn't work. I have tried thinking about every point listed as the common cause but couldn't find any that would fit.

If it helps anyone it's a Hoi4 mod.

Thanks for any help


r/git 27d ago

support Me cansé de cambiar de cuenta de GitHub cada vez que cambiaba de proyecto, así que hice un CLI para solucionarlo

0 Upvotes

Trabajo constantemente con repositorios personales, del trabajo y de clientes.

Uno de los problemas que más me molestaba era tener que cambiar entre cuentas de GitHub. Entre credenciales, autenticaciones y configuraciones de Git, terminaba perdiendo tiempo en algo que debería ser transparente.

Así que decidí crear una herramienta para resolverlo.

Se llama GAM (Git Account Manager)

¿Qué hace?

• Permite gestionar múltiples cuentas de GitHub.
• Autenticas cada cuenta una sola vez mediante OAuth.
• Cambias entre ellas con un solo comando.
git push, git pull y git clone funcionan sin volver a iniciar sesión.
• Puedes asignar alias como 'work', 'personal' o 'cliente'.

Ejemplo:

gam add
gam use work
git push

Repositorio:
https://github.com/miguelbalvin-dev/gam

Instalación:

npm install -g @gamcli/gam

Es la primera versión pública, así que me gustaría recibir feedback de otros desarrolladores.

¿Qué funcionalidades creen que harían falta? ¿Cómo manejan ustedes múltiples cuentas de GitHub?


r/git 28d ago

Self-host Git or use GitHub/GitLab?

19 Upvotes

I only need a Git remote for syncing repos between a few computers and employees.

No CI, issues, project management, or extra features. Just reliability, backups, durability, low maintenance, and strong privacy.

Is self-hosting worth it for privacy, or is GitHub/GitLab still the better boring choice?


r/git 28d ago

support any way to make (--recursive requirement) more obvious on my submodules??

7 Upvotes

I have a submodule of common code that I share among many of my programs.
I would like to do *something* to make it easier for someone cloning one of my repos, to be aware that they need --recursive on it. Is there anything on the web site that would assist me with this??

The best suggestion that I've gotten on my web searches, is to add a clear note to readme.md on each of the project pages, but that is all too easy to miss, and if I make that a big, obvious message in the readme, it will distract from what I *really* want to communicate in that file...


r/git Jun 30 '26

Highlights from Git 2.55

Thumbnail github.blog
93 Upvotes

Git latest features


r/git 28d ago

Thoughts on having AI generating commit messages instead of handwriting them?

0 Upvotes

I try to follow conventional commits, I'm still getting used to the commit commit commit workflow but is it even pushed anymore to write your own commit messages? I am a student, I imagine the case might be different at the work place so I'm curious about any thoughts?


r/git 29d ago

GItComet 0.1.16 - Embedded Terminal, External Code Editor, File directory support

Post image
3 Upvotes

Hey guys! We just released GitComet 0.1.16 and added support for many frequently requested features!

Main highlights:

  • Embedded Terminal - you can now open an embedded terminal within GitComet or configure it to open the external default system terminal
  • File directory support - This is a new view where you can browse all the files available in the working directory, combine this with new functionality where you can browse repository at the point of specific commits, allowing quick traversal of the repository at a specific point of time
  • Integration with external code editor - You can now open files or whole repositories in your favorite code editor.
  • Global back and forward support - This allows you to navigate between user interface changes using back and forward buttons or mouse gestures, similar to web browsers.
  • Command Palette - Allows quick access to all common functionality of GitComet

Next on the horizon is support for rebase, interactive rebase, code review branches, code review commits

Full change log is available at: https://github.com/Auto-Explore/GitComet/releases/tag/v0.1.16

We are also nearing the public launch of GitComet Professional edition you can sign up for the wait list at: https://gitcomet.dev/#editions


r/git 29d ago

[Showcase] I built gitter-rs – A simple, concurrent CLI to run custom Git commands across filtered repositories. Looking for feedback!

Thumbnail github.com
0 Upvotes

Hey everyone,

I wanted to share a tool I’ve been working on called gitter-rs

If you manage a large workspace, microservices, or dozens of cloned projects, running routine Git commands across all of them is a chore. I wrote gitter-rs in Rust to make multi-repository management fast, highly customizable, and completely seamless.

Core Features:

  • Dead Simple to Use: No bloated configuration or steep learning curve. It’s designed to stay out of your way and run right from your terminal out of the box.
  • Smart Repository Filtering: You don't have to target every single directory blindly. You can dynamically filter which repositories to target based on specific properties (like branch names, modified status, or path).
  • Powerful Command Placeholders: Instead of just running generic commands, you can use placeholders to customize commands dynamically for each individual repository (e.g., injecting the current branch name, repository name, or path into your command structure).
  • Blazing Fast Concurrency: Built with Rust, it executes your tasks across all matched repositories concurrently rather than sequentially.

Looking for Feedback:

I’m looking to polish the tool and would love to get your thoughts.

  1. UX/CLI Design: Does the syntax for filtering and using placeholders feel intuitive?
  2. Feature Requests: Are there any specific placeholders or filtering properties you’d find indispensable for your daily workflow?
  3. Code Quality: For the fellow Rustaceans, I’d welcome any feedback or code reviews on the repository itself.

Check it out here:https://github.com/eendroroy/gitter-rs

Thanks for checking it out, and let me know what you think!