The source branch and target branch are only different for pull request events, where you are requesting to merge code from source branch A to target brach B. Bitbucket (bitbucket.org) does not support pull request refs which prevents Drone from being able to process pull request hooks [1]. Drone only processes push hooks from Bitbucket which is why the source branch always matches the target branch.