On Mon, Apr 6, 2015 at 3:48 PM, Matt Welland <mattrwell...@gmail.com> wrote:
> On Mon, Apr 6, 2015 at 10:05 AM, James Moger <james.mo...@gmail.com> > wrote: >> >> By default non-fast-forward pushes (fork in Fossil terms) are blocked. >> > > This is what I thought. So what technical obstacles are there preventing > fossil from adopting this behavior? > I don't think they should be blocked, but the upstream repo should detect them and warn about them. (which I outlined in an earlier post) > One idea: all blobs could be sync'd but blobs would need to be blessed > before becoming part of the official fossil record. Various mechanisms > might exist for such blessing. The anti-fork mechanism: before a node is > blessed it would need to prove that the node it was derived from had no > children unless the branch name was different. Anyone trying to push a > non-blessed blob would get a big fat warning and the onus would be on them > to resolve at their end before trying to sync again. > I think this is too complicated. If all development is done on its own branches, and all merges are coordinated with the affected parties[1], then no "forks" should appear. But, sometimes a mistake occurs and a "fork" is created. In theory, this is most likely to occur when merging a branch into another, whether the target branch is "trunk", a release branch, or another dev branch. In the past, when I brought this up, somebody claimed that forks are already obvious by looking at the timeline graph. On the one hand, I agree that branch maintainers should be watching their branches extremely carefully AND that committers should always check, repeatedly, that their commits have not been accidentally orphaned. On the other hand, I know that developers are people and people make mistakes, including overlooking other people's mistakes. [1] By "affect parties" I mean the devs responsible for the target branch.
_______________________________________________ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users