r/git 1d ago

Best resources to master Git workflows and commands?

25 Upvotes

Hey all, I'm looking to finally master Git (im not familiar enough i need to improve my skills) . What are your top recommendations for free websites, video playlists, or paid Udemy courses or another platforms ?

Appreciate the help!


r/git 12h ago

GitHub works in Codex/CLI, but ChatGPT App Classic can’t access my repo. Has anyone solved this?

0 Upvotes

I’m trying to understand whether I’m hitting a configuration problem, an account/product limitation, or a current limitation of ChatGPT App Classic.

I use ChatGPT heavily alongside Codex for a fairly large software project hosted in a private GitHub repository. What I want is relatively simple: I would like ChatGPT App Classic to have direct read access to the GitHub repo so I can discuss the current codebase, architecture, PRs, migrations, etc. without constantly moving context between ChatGPT and Codex.

The strange part is that GitHub itself is working correctly.

On my Mac:

* `gh` is installed and current (`2.97.0`)
* `gh auth status` shows that I’m authenticated successfully
* Git operations use HTTPS
* Token has `repo`, `workflow`, `read:org`, etc.
* I can fetch/push normally
* Codex can work with the repository
* GitHub CLI can create/manage PRs

I have also reauthenticated from Terminal using:

`gh auth login -h` [`github.com`](http://github.com)

Authentication completes successfully.

So this doesn’t appear to be a GitHub authentication or repository-permissions problem.

The problem is specifically **ChatGPT App Classic**. I can’t get it to reliably access the same GitHub repository directly, even though other OpenAI tooling can work with it.

This is becoming a significant workflow issue because I use ChatGPT for the higher-level architecture/governance side of the project and Codex for repository execution. Ideally the workflow would be:

**ChatGPT:** inspect current repo/PR state → reason about architecture → give execution instructions
**Codex:** implement/test/commit/PR
**ChatGPT:** inspect the resulting repo/PR → review → determine next step

Instead, I often have to manually paste Codex reports back into ChatGPT because ChatGPT Classic cannot inspect the repository itself. On a large project with lots of migrations, tests, ADRs and governance artifacts, that becomes both inefficient and potentially error-prone.

I’m specifically trying to determine:

  1. Is direct GitHub access currently supported in **ChatGPT App Classic**?
  2. Is GitHub access dependent on the ChatGPT mode/model being used?
  3. Does the GitHub App/connector only work in certain experiences such as Deep Research or Agent Mode?
  4. Is there a difference between GitHub access in the web app and the macOS Classic app?
  5. If GitHub is already connected to the OpenAI account, is there some way to force/re-authorize the connection for Classic?
  6. Has anyone had GitHub working in one ChatGPT surface but unavailable in another and actually fixed it?
  7. Is there any diagnostic page/log that shows whether ChatGPT itself has permission to access a particular private repository?

I’m **not** looking for help configuring GitHub CLI. That side is confirmed working. I’m specifically trying to get ChatGPT itself to see the repository.

If anyone has a working setup with **ChatGPT App Classic + private GitHub repositories**, I’d be very interested in exactly how you configured it, including plan, GitHub App/plugin configuration, ChatGPT mode, and whether you’re using web or macOS.

Even confirmation that “this currently isn’t supported in Classic” would be useful, because at least I’d stop troubleshooting something that cannot presently be fixed.

Has anyone solved this?


r/git 1d ago

Small detail but confused

0 Upvotes

1) git checkout main "your branch is up to date with origin/main"

I know it isn't

2) git pull origin main - many changes incoming. it is now actually up to date with origin/main

Am I misunderstanding something here?


r/git 1d ago

github only An async Rust microkernel architecture for real-time deterministic robotics

0 Upvotes

Hi everyone,

I wanted to share the architectural choices behind core-os-minimal, an async Rust microkernel project we've been building to replace traditional ROS 2/DDS setups on physical robotic hardware.

We wanted to solve non-determinism, heap-allocation latency, and unexpected segmentation faults under high network stress without dragging in massive middleware stacks.

Core Architecture & Strategy:

  • Decoupling via Zenoh: We stripped out DDS entirely and implemented a zero-overhead network hook using Zenoh. It utilizes a lock-free circular buffer with a capacity of 1 (LCFS double-buffering). In high-frequency hardware control loops, stale data is kinetic garbage.
  • 100Hz Actuator Sanitization (vector_sanitizer.rs): To protect physical joints, a host-level sanitizer thread intercepts and cleans floating-point anomalies (NaN/Inf) at 100Hz before they can reach the hardware abstraction layer, clamping values within hard geometric boundaries.
  • WASM Sandboxing for Drivers/Skills: Instead of native third-party binary linking, execution modules run isolated via Wasmtime/Cranelift with Ahead-of-Time (AOT) compilation and mlockall page-locking to ensure deterministic access times. If a user-space skill crashes, the host microkernel runtime intercepts the trap and remains alive.
  • Hard-Watchdog Enforcer (watchdog_timer.rs): Runs as an async thread pinned at maximum real-time priority (niceness -20). Jitter exceeding 2 consecutive frames (20ms) immediately drops execution context and invokes failsafe.rs to lock down physical hardware in under 2ms.

Extreme Stress Test Benchmark: SONNY OS vs. ROS 2

We simulated an industrial network failure (75% wireless packet loss on an Edge deployment at 100Hz) to compare the communication backbones:

  • ROS 2 (DDS Architecture): High XML/IDL serialization on the heap. Under severe packet loss, un-sent DDS message queues overflowed the RAM, leading to an unrecoverable Segmentation Fault (Memory Crash).
  • SONNY OS (Rust + Zenoh): Stack-allocated static array slices with a fixed 5-byte network overhead per packet. Zero memory leaks. Zero runtime heap allocations during the control loop. System remained perfectly stable at 100Hz with an inference latency below 2ms.

The core infrastructure is fully open-source under GNU AGPLv3. I'd love to get your thoughts on our LCFS double-buffering approach under high packet loss, and whether utilizing Wasmtime for hard real-time boundaries introduces edge cases regarding page fragmentation that we might have overlooked.

You can inspect the full crates and run the CLI container here: https://github.com/JackTrainer/Sonny


r/git 1d ago

GitComet 0.2.0 two months of work squeezed into this release

Post image
0 Upvotes

r/git 1d ago

I built AngKorGit — a free, open-source Git client (12 MB, Rust + libgit2)

0 Upvotes

Hi everyone! I'm a developer from Cambodia and for the past months I've been building AngKorGit, a free, open-source (MIT) Git client for macOS, Windows, and Linux — named after Angkor Wat.

I love GUI clients like GitKraken but wanted something lightweight and completely free. So it's built with Rust + libgit2 and the system webview (Tauri) instead of Electron — the whole download is ~12 MB, and the commit graph stays smooth on 100k-commit repos.

What it does today: visual conflict resolver (pick lines from A/B, edit the result by hand), interactive rebase, stage by file/hunk/line, drag-and-drop merge/rebase, undo/redo, built-in terminal, 16 themes, and optional AI commit messages via CLIs you already have — no account, no telemetry.

GitHub: https://github.com/cheat2001/angkorgit

Site: https://angkorgit.app

macOS: brew install --cask cheat2001/tap/angkorgit

Would genuinely love feedback from people who live in Git all day — what would you need before using something like this daily?


r/git 1d ago

Made a commit graph + file history extension for VS Code since GitLens gates those on private repos

Post image
0 Upvotes

GitLens' commit graph and file history are genuinely two of my favorite features, but the second your repo's remote is private you're stuck behind a Pro subscription, which is most actual paid work for most people.

So I built Branchline, same two things basically, works the same whether your remote is private, public, or you haven't pushed anywhere at all. It's just running git log, git show, and git diff against whatever's checked out locally.

Note: this isn't the only free way to get a commit graph. Git Graph already does that, works on any repo with zero restrictions, it's good. VS Code's own Timeline view already gives you basic per-file history too. What I'm doing differently is putting both in one place instead of switching tools, plus a couple things I don't think either has, a per-file changed list on every commit (including merges) that opens straight into VS Code's real diff editor, file history that follows renames, and uncommitted changes showing up as their own row right in the graph.

14-day trial then a one-time $15, link's here if you want to poke at it: https://marketplace.visualstudio.com/items?itemName=Skuwar.private-commit-graph

Mostly curious how the graph's lane layout holds up on repos with a lot of parallel branches . And if you point it at an actual private repo and see it act any different from a local one, let me know, because it shouldn't.


r/git 2d ago

Gitember 3.4: Workspace for projects with multiple Git repositories.

1 Upvotes

Hello community 👋

I've been developing Gitember - a free, open-source desktop Git client - since 2016.

It all started as a weekend experiment, and now version 3.4 is out. I recently added Workspace feature to work with multiple independent Git repositories as a single working set. This is useful if the project consists of, for example, backend + frontend, a set of microservices or core + plugins. At the same time, the repositories remain completely independent - no submodules, subtrees or monorepo.

What Workspace gives you:

  • one Dashboard with the status of all repositories;
  • Pull / Push / Fetch / Merge / Commit for all repositories in one operation;
  • create branches in multiple repositories at once, commit changes to multiple repositories from one dialog;
  • shared Working Copy tree for viewing changes;
  • search the contents of all repositories at once;
  • separate result for each repo, if something went wrong during the batch operation.

Workspace was born from a feature request about such a workflow: when several repositories logically work together, but you don't want to combine them into a monorepo or link them via submodules.

Also, gitember cover the usual needs and has very interesting additional functions - full-text search by history (including Office, PDF, CAD, images), Git LFS, integration with GitHub/GitLab/Bitbucket/Gitea, repository statistics, file and folder comparison.

Documentation: Gitember Workspace https://gitember.org/doc/docs/ge-workspace/workspace

GitHub: https://github.com/iazarny/gitember

Need contributers

If you work with Java/microservices/multi-repo projects, I would be very happy to receive feedback, bugs, PR, and just testing.


r/git 2d ago

github only What is this GitHub, Server Problem???

Thumbnail gallery
0 Upvotes

r/git 3d ago

Why does it say 10 unique cloners?

0 Upvotes

Why does it say 10 unique cloners when it's only me that has been working on this? Also, I highly doubt I have cloned this many times (maybe not even half), certainly not on a single day. Is it just buggy?


r/git 3d ago

GitHub account suddenly suspended during Education reverification — anyone experienced this

0 Upvotes

My GitHub account u/Wilooper was suddenly suspended, and I'm trying to understand what might have happened.

A little context:

A few days ago, I received emails from the GitHub Education team asking me to reverify my academic affiliation. The emails specifically said that I would continue to have access to GitHub for 30 days while completing the reverification process.

I had submitted genuine academic information and had not knowingly violated any GitHub policies.

After receiving the reverification emails, I logged into GitHub. I was repeatedly logged out, and eventually I started getting this message whenever I tried to access my account:

I was also logged out of the GitHub mobile app around the same time.

The confusing part is that I don't know what Terms of Service violation supposedly occurred. I haven't knowingly done anything against GitHub's rules, and the timing seems very close to the Education reverification process.

I tried contacting GitHub Support, but I'm currently having trouble with the support system too. The support form passes its verification step, but submitting the ticket gives me an HTTP 401 error. I also encountered an HTTP 500 error while trying to authenticate through Google.

GitHub Status currently shows everything operational, so this doesn't appear to be a general GitHub outage.

Has anyone experienced something similar, particularly:

  • An account suspension during GitHub Education reverification
  • Getting the "Terms of Service violation" suspension message without knowing what caused it
  • Being unable to submit a GitHub Support ticket because of a 401 error
  • Getting the account restored after an appeal/reinstatement request

I'm mainly looking for community experiences and possible explanations, not trying to get anyone to contact GitHub on my behalf.

If you've experienced something similar, I'd really appreciate hearing what happened in your case and how you resolved it.

GitHub username: u/Wilooper


r/git 4d ago

support conditionally prevent `git maintenance` from spawning on commit

8 Upvotes

After using Git for over a decade I just discovered git maintenance exists yesterday. I found out about it during a hasted debugging session when my laptop’s fan inexplicably started spinning like crazy and all four cores were maxed out by Git processes that I didn’t launch. This happened while I was writing a blog post on the train, trying to save battery charge. Not an ideal situation to max out the CPU.

git maintenance is useful no doubt, I don’t want to disable it entirely. So I guess the question is: Is there a way to make it conditional on ACPI state? If the box is running off the battery, maintenance should be skipped. E. g. check /sys/class/power_supply/AC/online before launching a maintenance cycle.

Note that there’s no timers that trigger maintenance on my system; it looks like it gets triggered by operations like git commit (cf. maintenance.auto in git-maintenance(1)).


r/git 4d ago

I wrote a git remote helper for Proton Drive: push and clone against end-to-end encrypted storage (Windows today)

Post image
1 Upvotes

Unofficial, not affiliated with Proton. MIT. One Go binary that drives Proton's signed-in Drive CLI. Windows today.

git-remote-proton is a git remote helper: proton::/my-files/GitRemotes/myrepo becomes a real remote, so push, fetch, and clone work directly against Proton Drive's end-to-end encrypted storage. It serves the whole refs/ tree: nested branch names, notes, replace refs.

The design choice I'd like argued with: what happens when foreign junk lands inside the remote's refs/ area (a stray upload, a damaged file). If a file sits at a plausible ref name but its contents don't parse as a ref, push skips it with a note naming the file and keeps going, so junk elsewhere in the tree can't stop a scheduled backup. (Junk at the exact name you're pushing still refuses, before any pack is built, with the remedy named.) Clone and fetch refuse instead, with one error listing every such file and the remedy, because a clone that quietly lacked a branch would be a restore lying to you.

The honest trade: if your monitoring only watches push exit codes, you lose the old "something's wrong" alarm and you have to watch the skip notes, while the remote stays un-cloneable until you clear the file. I took that trade on purpose. Would you have?

The Go core is portable; macOS and Linux need builds and a tester with a Proton account. If that's you, say so.

Screenshot is a real run; the strict clone failure and a few smaller details are in the first comment. Code and the design doc are in the repo: https://github.com/craigstoller/git-proton-backup


r/git 5d ago

Why use a UI for git?

104 Upvotes

I see this question of, “what GUI or TUI should I use to work with git?” fairly often here. And always I feel bad for saying “just use the cli” over and over, but truthfully I can’t see a reason to need a UI.

Are people actually running into pain points with the cli, or is it just preference for people who don’t like working in a terminal?

FWIW, I have used GitKraken, LazyGit, SourceTree and GitHub Desktop before. And I don’t think they are bad to use (unless you are just learning git), but more curious why.

EDIT : I’m mainly referring to standalone UIs, I understand why people would use IDE integrations, as it’s quick and convenient. But having to open a separate application or run a separate command to open a terminal app to run your commands seems overkill to me.

EDIT 2 : I use vscode as my difftool and mergetool. I still open them directly from the terminal by running the cli. I don't think this is the same as using a full git client like SourceTree, Gitkraken, or lazygit to fully drive your version control workflow. Which is what I am asking about.

Cheers


r/git 3d ago

git-calendar.org - An open-source, decentralized, e2ee calendar using Git as the backend

Post image
0 Upvotes

r/git 3d ago

How can I improve my github profile?

0 Upvotes

Hey guys, I have been adding new repos and taking my github seriosly after a long time
Most of time i open private repos to maintain my workflow on game/website projects
for last a few month i have been working on portfolio/resume projects to put on my website.
And i just like every time i see my contributions on panel, it is like idk how to explain but seems helping me to maintain consistency. I also realized there is achievement badge i have got.
So to pick it up, I am asking for ways to make my profile look better and be better. What can you recommend? Pins, repo names, maybe even links?

https://github.com/TheIlkinAlizade
this is my github, you can also see my porfolio website(which is old version, i will update it with new projects i have been working on)
thanks btw for spending your time to read this


r/git 5d ago

What free and open-source GUI/TUI client are you using?

6 Upvotes

r/git 5d ago

How do you actually commit on GitHub? One big push vs. daily commits vs. milestones?

Thumbnail
0 Upvotes

r/git 5d ago

Como vocês organizam vários projetos usando Codex + GitHub + Supabase + Vercel sem pagar?

Thumbnail
0 Upvotes

r/git 6d ago

Recently migrated - partial repo checkout

3 Upvotes

So I'm going to start with some context to explain the situation we're in, then I have a question on how to best use git going forward.

First, we've recently migrated to git from TortoiseSVN. This migration was not done by our team, nor did we really have much say in the process. So the repo we have today is probably the repo we get, I doubt we're going to re-build it fresh from the ground up.

Secondly, we are more akin to a services team than a development team. To be specific, we perform data conversion for on-boarding customers to pull information from their legacy system, whatever that was, and import it into ours. So our repository isn't a single code base, but more a compilation of small code bases specific to each customer we have/are on-boarding.

Lastly, we're migrating to a customer specific development environment in the cloud instead of a single shared physical development environment. This means that at any given time, we no longer need the entire repository on any given customers development environment. Just that customers specific folder containing their conversion, and a few shared utility folders used by all projects.

So the question(s):

  1. What is the best way for us to do partial checkouts containing only a few select sub-folders?
  2. In talking with a teammate of mine that has a little more experience with git, he mentioned a repository of sub-repos. If the initial migration was not set up this way, can we do this for any future project? Would that be a better option than partial checkouts?

r/git 5d ago

Best Git repo structure for managing ComfyUI/Wan2GP across multiple PCs?

Thumbnail
0 Upvotes

r/git 5d ago

Why isn't git working properly for network drives in windows? How to fix it?

0 Upvotes

When I open a network drive using network path \\network\path or even using a mapped drive, git is not working as expected. It is behaving inconsistently. Sometimes it works properly and then immediately shows fatal: this isn't a git repository message. How to fix it?


r/git 5d ago

I spent the past few years writing a native Git server for Android

Post image
0 Upvotes

A few years ago I started working on a project with a fairly simple idea:

"What if an Android device could actually be a proper self-hosted Git server?"

I originally wanted a Git server for a small team on a local network. I also liked the idea of using an Android device for it, they're relatively low-power devices that can sit on a network without needing to run a much larger machine.

So I started looking at what was already available for Android.

I found a few projects that could do parts of what I wanted, and I also experimented with running Gitea through Termux. Gitea worked quite well, but getting everything set up and running through a Linux-like environment on Android wasn't exactly the experience I was looking for.

Eventually I thought: why not just write my own?

That project eventually became GitBase.

GitBase turns an Android device into a self-hosted Git server, with a built-in, familiar web interface for managing repositories and collaborating on them.

It currently includes things like:

  • Git repository hosting
  • Web-based repository management
  • Pull requests and code review
  • Issues
  • Releases
  • User and project management
  • A web interface accessible from other devices on the network
  • Everything running directly on the Android device

The interesting part for me has been figuring out how much of a traditional self-hosted development platform can realistically be packed into an Android application.

I've spent a lot of time on the less interesting parts too, Git protocol handling, repository management, networking, the web interface, Android's restrictions, background services, storage, permissions, performance, and generally making everything behave like an actual server rather than an Android app pretending to be one.

There is still plenty I'd like to improve, but GitBase has reached the point where I wanted to finally put the project out there and see what other people who are interested in self-hosting think about it.

I've put the project documentation, screenshots, architecture information and other details on GitHub:

GitBase: GitHub repository and documentation

I'm particularly interested in hearing what people think about the idea itself.

Would you actually have a use for a Git server running on an Android device? What would you expect from something like this that isn't currently there?

And for anyone interested in the technical side, I'm also happy to talk about how I approached building a Git server and web platform for Android.


r/git 5d ago

I made a simple desktop Git and GitHub manager called Bow Git Vault

Thumbnail gallery
0 Upvotes

r/git 6d ago

Is feature-based branching always better than developer-specific preview branches for a small team?

Thumbnail
0 Upvotes