>Hi John, > >thought about this for a while, but I don¹t have a good answer. >Afaics your use case would be best served with workspaces. Until these >are implemented in Oak one possibility would be to emulate in the app as >mentioned before. >Under the hood Oak indeed uses branches that are designed to work much >like git branches, i.e. they are lightweight. However, a) these are not >exposed on API level and b) the current intended usage for those is for >large transactions, i.e. they are rather short-lived in nature. >a) could be fixed, but I am not so sure about b). The question is if the >current branch design would work fine for longer lived branches, as I >expect that there would be (much) more complicated merge logic, maybe >even app-specific merge logic. >Maybe someone else has a thoughts about this? >
Assuming a) from above, if the merge logic needs to be, or is frequently app-specific, maybe the workspace API should provide an optional merge callback to do the actual merge. This would allow any app-specific merging to be accomplished while still leveraging OAK workspaces, should they ever be exposed. It seems like a wasted effort for app developers to implement all of the workspace logic only because they have specific merge requirements. -Bruce
