I want to be able to publish a git tree for others to follow but I also want to be retain the freedom to remove commits and/or rebase commits in the tree. For example, if someone sends me a patch and I put it in the tree, then they send me a revised version, I want to be able to roll back to just before I applied the older patch and start again from there.
What this means, AFAICS, is that the head of the published tree won't always be a descendent of all previous values of the head. If somebody is following the state of the tree by doing a git pull every so often, and I have rolled back the tree and applied some new patches, then the git pull will try to merge the old and new state, which is not what we want. What we want is something that just gets the local tree to the same state as the remote tree.
Is there a git command which does the equivalent of a git fetch, followed by setting the head and checking it out?
Or is this an incredibly stupid idea for some reason that hasn't occurred to me yet? :)
Thanks, Paul.