CPC G06F 16/213 (2019.01) [G06F 16/219 (2019.01)] | 41 Claims |
1. A computer implemented method for maintaining version control for databases in a database version tracking system, with branching support for database schemas, the method comprising:
creating a first branch of a main database from the database version tracking system;
wherein the first branch further comprises a copy of the main database in a specific state, as recorded in the database version tracking system, the copy being created in a workspace isolated from the database version tracking system, the copy comprising at least a copy of a schema of the main database in a specific state;
responsive to receiving a control signal from a user associated with the first branch indicating to merge a changed version of the first branch back into the database version tracking system, determining differences between a current version of the main database as tracked by the database version tracking system and the changed version of the first branch;
wherein determining differences between the current version of the database and the changed version of the first branch further comprises generating at least one schema diff;
determining, from the at least one schema diff, whether merging the changed version of the first branch back into the database version tracking system creates a conflict; and
responsive to determining that merging the changed version of the first branch back into the database version tracking system does not create a conflict, merging the changed version of the first branch back into the database version tracking system;
wherein merging the changed version of the first branch back into the database version tracking system further comprises performing at least one schema operation from a group of schema operations consisting of: create table, drop table and alter table, the at least one schema operation being indicated by the at least one schema diff.
|