We are experimenting with "Github Flow", as defined here.
In short, every change starts off as a well-named branch off of master. When it's done, you open a PR for that branch, it gets reviewed, and then gets merged into master. It's a very simple workflow.
However, we have run into this a couple of times: I develop feature X, and open a PR for it. While I'm waiting for the PR for X to be reviewed, I want to start work on another feature Y, but I need the code from PR X. Should I just start a branch from the feature X branch, or if I've already started feature Y, just merge feature X into the feature Y branch? It seems so, but I wanted to check with other teams that are following this model to see how they handled multiple PRs and features that are dependent upon each other.