Adding Lookup Keys to a List Lookup Definition from a Branch Life Cycle Could Override Some Prior Change(s)

My colleague and I ran into an issue when adding a lookup key to a list lookup definition from our own branch life cycle. Both of us branched our own life cycles at the same time. Sometime later, my colleague added a lookup key to a list lookup definition and merged it to the base life cycle. After that, I could wipe out that change when I added another lookup key to the same list lookup definition and merged it to the base.

Question: Why is there no way to either branch or check out a list lookup definition? That would prevent this kind of change conflict.