I have been working with git for some time now and I have come to this situation.
Say I am working on one feature adding_feature_1 on my feature1 branch and then suddenly I got asked to add feature 2.
The obvious would be to go to the root where feature1 branch started and checkout a new branch feature2. Probably when I am done merge it
However, if I do that, (meaning I checkout to the root branch) I won't be able to see the things I was working on feature1.
What if I want to see it?
Worse still what if I want to run things with the feature1 code, and since running it takes time I want to work on feature2. I suspect checking out to a different branch would mess things with the feature1 run
What I do now and I think it is very wrong and messy is to start a new branch2 from branch1 but it gets disorganized after a while because then if I merge it a branch has two features added and not one.
How do others work with this situation?