Modern Git replacements/extenders like Sapling, Jujutsu, Gitbutler usally add to Git these features: you have a stack of commits and you can improve them, iteratively, adding things to commits, splitting or folding them; the way you fix merge conflicts is saved, so when you change the commit history again or receive changes upstream, many merges can be reapplied automatically; the history of changes is saved in a log and you can undo/redo and review what you have changed in the repo, not only in the files.I didn't understand what the real problem is with Git?