# Branch, merge, rollback

**URL:** <https://discuss.dgraph.io/t/branch-merge-rollback/10952>\
**Category:** Users\
**Tags:** dgraph, kind:feature\
**Created:** [October 14, 2020, 11:58am UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952 "2020-10-14T11:58:18Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![zch](https://avatars.discourse-cdn.com/v4/letter/z/e9bcb4/32.png) [@zch](https://discuss.dgraph.io/u/zch)\
**Post date:** [October 14, 2020, 11:58am UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952/1 "2020-10-14T11:58:18Z")

</div>

I would love a feature in Dgraph for creating **branches** and the ability to **merge** them together.  
Like Git is designed for code management, it would be nice to have **DGraph for data management** to enable collaboration and revision control on data assets.

Features I am interested in:

1. Creating branches
2. Merging branches
3. Rollback of changes

---

<div class="post-metadata">

**Author:** ![chewxy](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/chewxy/32/4339_2.png) [@chewxy](https://discuss.dgraph.io/u/chewxy)\
**Post date:** [October 14, 2020, 12:35pm UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952/2 "2020-10-14T12:35:48Z")

</div>

Hey @zch welcome to the Dgraph community!

When you say “branch, merge, rollback”, do you mean versions of the data? Because otherwise, it’d be fairly trivial to do that in Dgraph.

---

<div class="post-metadata">

**Author:** ![anand](https://yyz1.discourse-cdn.com/flex007/user_avatar/discuss.dgraph.io/anand/32/5674_2.png) [@anand](https://discuss.dgraph.io/u/anand)\
**Post date:** [October 14, 2020, 2:29pm UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952/3 "2020-10-14T14:29:57Z")

</div>

Hi @zch  
I have recently showcased a [demo](http://discuss.hypermode.com/t/demo-a-master-data-management-use-case-with-graphql/) on data lineage in a master data management scenario. In particular, there is a simplified treatment of doing a workflow in Dgraph using graphql. This is not a complete solution, but more of a clear approach we can take for this type of data management problem.

---

<div class="post-metadata">

**Author:** ![zch](https://avatars.discourse-cdn.com/v4/letter/z/e9bcb4/32.png) [@zch](https://discuss.dgraph.io/u/zch)\
**Post date:** [October 14, 2020, 3:31pm UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952/4 "2020-10-14T15:31:53Z")

</div>

The idea is to create a branch of the existing graph (all edges and nodes). This should enable us that different people can work on different branches. Like in classic software development it should be able to merge all changes back to the main branch.  
Do you understand?

---

<div class="post-metadata">

**Author:** ![zch](https://avatars.discourse-cdn.com/v4/letter/z/e9bcb4/32.png) [@zch](https://discuss.dgraph.io/u/zch)\
**Post date:** [October 15, 2020, 9:09am UTC](https://discuss.dgraph.io/t/branch-merge-rollback/10952/5 "2020-10-15T09:09:20Z")

</div>

Hi @anand  
thank you for your reply. I will check that.
