Since both are ultimately children of the development branch, what is the intended use of a release vs a feature when using the smart branching tools?
I'm setting up a respoitory for applications developed on top of an vendor's database product. This product has a build promotion stream with 3 environments; POC, Test and Production. We connect to the POC environment for development projects, and we need to do integrated testing before promoting anything to the Test environment. My first thought was to let the development branch correspond to the code in Test and to always have a release branch active to track the code in POC (ie, finish the release when code moves into Test, then immeidatley start the next one to catch the next round of changes). I initially thought that features would be children of the active release and they could be used to further quarantine changes that weren't ready for full integrated testing, but found that finishing a feature merges the code into the development branch instead.
I can do what I want by manually creating a branch and merging it into the release when I'm done with it, but I'm not sure now what the purpose of a release vs feature is since they are structurally identical. Based on the names, I expected a release to be a collection of features. As they are, I don't see any difference between the two.
Thanks.