hasura / hasura/graphql-engine

Version Control to avoid Database conflicts

Open
#10,212 0 comments 0 reactions 0 assignees View on GitHub
k/enhancement
Dominant language
TypeScript
Stars
32.1k
Forks
3k
PR merge metrics
PR metrics pending

Description

### Component
Graphql Engine (for features that relates to graphql features; metadata modeling) -> c/v3-engine

### Is your proposal related to a problem?
So we have multiple branches on which we work on different stories which include multiple database changes. For Suppose I add a database field `field1` for one story in one branch and I want to stop this work in mid and work on another database change `field2` in another branch, I can't do that because the hasura metadata will already assume the database changes in my previous branch. I just want to push `field2` without any changes related to `field1`.

### Describe the solution you'd like
So we would have something like a branch which we can create and there will be a `main` branch which is similiar to github. Whenever we checkout to a new branch and make database changes or migrations, It should be confined to that branch including the hasura metadata. So In this way, If I want to make another change to the database, I can just create another branch on Hasura from `main` and make those changes and push it without the previous changes.

### Describe alternatives you've considered

I didn't consider any alternatives as of now, This is the bigger problem as most people will be working on multiple stories at the same time and they don't want the changes of story 1 to reflect in the changes of story 2.

Contributor guide

Open the contributing guide

Research direction

The issue names c/v3-engine as the component but no files or tests. Start by mapping how that component handles Hasura metadata and database migrations, then define how branch creation, checkout, and pushing should isolate changes. Done would require a decided design and verification that changes from one branch do not appear in another.

Written by the indexing model from the issue text.

Assessment

Tech stack
graphql
Domain
databases, developer-experience
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.