Repository navigation
Bound URL push tracking updates on Git 2.56 - #98
Merged
Merged
Conversation
This was referenced Oct 28, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Git 2.56 can update a configured remote’s tracking refs during a push that names an explicit URL. FileGRC then treated the already-updated ref as a concurrent change, leaving a successful push marked Not synced and preventing retry reconciliation.
Keep the captured URL and explicit lease, exclude the pushed ref from implicit fetch-refspec updates, and update only the intended tracking ref through an atomic comparison. Reconciliation also accepts a ref already at the desired commit; a different concurrent value remains visible as Not synced with retry blocked. A no-upstream regression protects an unrelated local branch from configured fetch mappings.
Validation: full CI-equivalent validation on Node 24.22.1 and Git 2.56.0; focused Git2.56 tests; real browser saves on separate synthetic instances for Synced and differing-ref Not synced, API/remote-commit checks, current screenshots, console/log inspection; package inspections, npm audit, credential/private-source scans. Combined code and security review is clean after bounded-ref remediation.
Released in 0.21.5 alongside the finalized Markdown companion fix in #97, with version coordination in #99. No data-model migration is required.
Publish and installed consumer smoke and main validation passed at
bfc2936cc932c8186d778faebd977cc7af670d37.