Keith Hughitt
Keith Hughitt

Reputation: 4970

Is there a way to gracefully change a git branch's history when forks of it exist?

I would like to correct some invalid authorship information using git's filter-branch feature. The problem is that there are forks of the branch which would then be out of sync.

Is there anyway to merge the changes to the commit log into the forks?

Upvotes: 3

Views: 271

Answers (3)

Adam Dymitruk
Adam Dymitruk

Reputation: 129782

go ahead and make the change but preserve the old history with a new branch name or tag. Make it descriptive as everyone will have a WTF moment. It's up to them to rebase their outstanding changes to continue to contribute. OR you could be nice and email them what you did so they skip the WTF part ;)

Upvotes: 1

VonC
VonC

Reputation: 1329962

The best you could do in this case is to add notes (git notes).

As mentioned in "Using git notes for doling out real contribution credit":

we could use Git's notes feature to solve a ton of our problems related to giving credit where credit is due.
Basically, notes are a way that you can attach additional metadata to a commit.

As many namespaces as we want, and as many items in each namespace as we want. The same person can get credit for doing multiple things.

So define a special namespace for that kind of correction, and at least the information can live (and get cloned) here.

Upvotes: 3

wRAR
wRAR

Reputation: 25569

Rewriting history creates new commits and there is no way to delete old commits from external repos. And if other repos contain commits based on ones you've rewritten, they must be rebased onto the rewritten ones. So if you don't have control over all repos with incorrect commits (and you can't have it if you've published that commits), there is no way.

Upvotes: 3

Related Questions