MSDyn365BC.Sandbox.Code.History - Late Hotfix Handling
The MSDyn365BC.Sandbox.Code.History repository now handles late hotfixes released by Microsoft with lower version numbers by automatically inserting them in the correct chronological position using git rebase, fixing repository bloat and confusing version order issues. Users with existing clones may need to update branches using provided automation scripts when history is rewritten.
post Stefan Maron
"Microsoft occasionally releases hotfix versions with version numbers lower than already-published versions."
Key points
- Microsoft occasionally releases hotfix versions with lower version numbers than previously published versions, creating semantic order issues in git history
- The automation script detects late hotfixes and uses git rebase to insert them at the correct position in the commit graph
- Repository history gets rewritten when late hotfixes are inserted, requiring users to update local clones with provided update scripts
- Automated solutions are available for Linux/macOS and Windows PowerShell to reset branches to match remote without manual intervention
- Partial and shallow clones can reduce local repository size by fetching only specific branches or recent commits
Quotes
- “Microsoft occasionally releases hotfix versions with version numbers lower than already-published versions.” (This explains the core problem that necessitates the new late hotfix handling system)
- “Git history now shows versions in proper semantic order. Repository size is reduced by avoiding massive diffs from out-of-order commits.” (Demonstrates the key benefits of the implemented solution for repository maintainability and performance)
- “Branch history may be rewritten when late hotfixes are released by Microsoft.” (Critical warning for users about why they need to update their local clones using the provided scripts)
Context
- Features: late hotfix detection and insertion, automatic git rebase workflow, semantic version ordering, repository size optimization, branch update automation, partial clone support, shallow clone support
- Versions: 27.0, 27.1
Source: Stefan Maron, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.