When testing out the awesome changes from T9657, I ran into a case that seems like it might be a bug, where Arcanist ends up on detached HEAD after landing instead of the local branch that was landed onto, if the local landing branch has a different name from the remote branch it's tracking:
- Create a new local tracking branch with a different name from its remote branch, e.g. git checkout -b slv --track origin/superlongversion
- Create a feature branch that tracks the local branch, e.g. arc feature somefeature slv
- Make changes on the feature branch, get them reviewed, and then run arc land
At this point, Arcanist successfully lands the changes into the local slv branch and pushes them to the superlongversion branch on origin, which is great. However, when it's done, it ends up on detached HEAD, because it can't find a local branch called superlongversion.
It would be nice if Arcanist checked out the local branch it landed onto in this case, rather than looking for a local branch with the same name as the remote branch that it ultimately pushed the changes to.