diff --git a/commands/pull_request.go b/commands/pull_request.go
index <HASH>..<HASH> 100644
--- a/commands/pull_request.go
+++ b/commands/pull_request.go
@@ -129,10 +129,12 @@ func pullRequest(cmd *Command, args *Args) {
 
 	}
 
-	if trackedBranch == nil {
-		head = currentBranch.ShortName()
-	} else {
-		head = trackedBranch.ShortName()
+	if head == "" {
+		if trackedBranch == nil {
+			head = currentBranch.ShortName()
+		} else {
+			head = trackedBranch.ShortName()
+		}
 	}
 
 	title, body, err := getTitleAndBodyFromFlags(flagPullRequestMessage, flagPullRequestFile)
Only set head when it's empty