Manipulating existing revisions by push or pull?
I've got a conceptual question.
I know that one can change history in a local repository with the 'rebase' command, e.g., using the interactive mode.
Is there any way to modify existing revisions in a local repository by a pull (and merge, whatever) from a remote one? Or is there any way to modify existing revisions in a remote repository by a push (or whatever) from a local one?
Put a different way: consider there is a hostile entity from which I pull or which I allow to push to me. Can this entity fiddle with my history? Can it change the data in existing revisions in my repository? Or can it only make new revisions grow on my side?
Thank you
Lasse
Quoted 5 lines · Lasse Kliemann
Put a different way: consider there is a hostile entity from which I pull or which I allow to push to me. Can this entity fiddle with my history? Can it change the data in existing revisions in my repository? Or can it only make new revisions grow on my side?
If you allow your ref to get updated to an arbitrary value, you are lost, unless you have signed tags that anchor things in place, in which case you can trust the part of history that is reachable from them.