{
  "id": 18526,
  "title": "Accepting a messy git history",
  "url": "https://urgent.news/2026/07/31/accepting-a-messy-git-history",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-07-31T18:27:28.000Z",
  "source": {
    "name": "Lobsters",
    "slug": "lobsters",
    "url": "https://beza1e1.tuxen.de/git_two_users.html"
  },
  "original_language": "en",
  "account": "GitHub recently introduced stacked pull requests, prompting a lively debate among developers about their approach to version control. Two camps have emerged: the commit-often advocates and the rebase adherents.\n\nCommit-often enthusiasts view fine-grained commit histories as a reflection of genuine development progress. They argue that squashing merges simplifies the history but sacrifices valuable context. For them, a neat history is crucial for understanding the intent behind changes. Steve Klabnik, a prominent GitHub user, sees stacked pull requests as one of the most significant updates to hit the platform in years, hoping it will introduce developers to novel workflows.\n\nConversely, rebase proponents scoff at the idea of frequent commits, considering them wasteful. They maintain that every commit should be preserved, even if it means a messier history. These developers dislike squash merges, which they see as destructive to their meticulously crafted commit histories. They prefer merge commits to ensure transparency and traceability.\n\nThe heated discussion highlights a fundamental difference in philosophy: one camp embraces frequent commits and squashing for simplicity, while the other prioritizes meticulous history preservation. Ultimately, the debate suggests that a clean history is more resilient in the long run, as it tends to deteriorate over time without strict enforcement. For most developers, making peace with a messy history may be the most pragmatic approach, especially when lacking control over a repository.",
  "summary": null,
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}