> From: Alcolo Alcolo <alcol...@gmail.com> > Because C can be a base commit of branches and merges, then it's a > nightmare to rebase. > > I know that scripts exists to rebase merges (based on git-rev-list, > git-cat-file, git-hash-object/git-commit-tree), but those scripts redo the > git-filter-branch job.
Actually, git-filter-branch is "based on git-rev-list etc." The purpose of git-filter-branch, though, is to be able to apply a complicated transformation to every commit in the branch, usually the uniform removal of particular paths from the file tree. What you seem to be wanting to do is modify a commit (although I'm not clear whether you simply want to change the meta-data or whether you want to also change the file content), and then have that propagated through all of the descendant commits (at least in their hashes, and possibly in their file content). That job isn't really the purpose of git-filter-branch, because in what you want, the changes to the descendant commits are only due to propagatation from the changes in C. But why are you, of all people, asking about this? You've used git-rebase--merge-safe, which does this sort of task. You've even *improved* it. Dale -- You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to git-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.