diff --git a/api/fake_http.go b/api/fake_http.go index 92b904bd5..ab726fb34 100644 --- a/api/fake_http.go +++ b/api/fake_http.go @@ -54,8 +54,7 @@ func (f *FakeHTTP) StubRepoResponse(owner, repo string) { "name": "%s", "owner": {"login": "%s"}, "defaultBranchRef": { - "name": "master", - "target": {"oid": "deadbeef"} + "name": "master" }, "viewerPermission": "WRITE" } } } @@ -76,8 +75,7 @@ func (f *FakeHTTP) StubForkedRepoResponse(forkFullName, parentFullName string) { "name": "%s", "owner": {"login": "%s"}, "defaultBranchRef": { - "name": "master", - "target": {"oid": "deadbeef"} + "name": "master" }, "viewerPermission": "ADMIN", "parent": { @@ -85,8 +83,7 @@ func (f *FakeHTTP) StubForkedRepoResponse(forkFullName, parentFullName string) { "name": "%s", "owner": {"login": "%s"}, "defaultBranchRef": { - "name": "master", - "target": {"oid": "deadbeef"} + "name": "master" }, "viewerPermission": "READ" } diff --git a/api/queries_repo.go b/api/queries_repo.go index 5a5061eda..5a2e8e1da 100644 --- a/api/queries_repo.go +++ b/api/queries_repo.go @@ -28,10 +28,7 @@ type Repository struct { HasIssuesEnabled bool ViewerPermission string DefaultBranchRef struct { - Name string - Target struct { - OID string - } + Name string } Parent *Repository @@ -127,7 +124,6 @@ func RepoNetwork(client *Client, repos []ghrepo.Interface) (RepoNetworkResult, e viewerPermission defaultBranchRef { name - target { oid } } isPrivate } diff --git a/command/pr_create.go b/command/pr_create.go index 238057bf8..96448175c 100644 --- a/command/pr_create.go +++ b/command/pr_create.go @@ -122,7 +122,11 @@ func prCreate(cmd *cobra.Command, _ []string) error { return fmt.Errorf("could not parse body: %w", err) } - defs, defaultsErr := computeDefaults(baseBranch, headBranch) + baseTrackingBranch := baseBranch + if baseRemote, err := remotes.FindByRepo(baseRepo.RepoOwner(), baseRepo.RepoName()); err == nil { + baseTrackingBranch = fmt.Sprintf("%s/%s", baseRemote.Name, baseBranch) + } + defs, defaultsErr := computeDefaults(baseTrackingBranch, headBranch) isWeb, err := cmd.Flags().GetBool("web") if err != nil { diff --git a/command/pr_create_test.go b/command/pr_create_test.go index 72a439677..b04f28b3a 100644 --- a/command/pr_create_test.go +++ b/command/pr_create_test.go @@ -216,8 +216,7 @@ func TestPRCreate_cross_repo_same_branch(t *testing.T) { "name": "REPO", "owner": {"login": "OWNER"}, "defaultBranchRef": { - "name": "default", - "target": {"oid": "deadbeef"} + "name": "default" }, "viewerPermission": "READ" }, @@ -227,8 +226,7 @@ func TestPRCreate_cross_repo_same_branch(t *testing.T) { "name": "REPO", "owner": {"login": "OWNER"}, "defaultBranchRef": { - "name": "default", - "target": {"oid": "deadbeef"} + "name": "default" }, "viewerPermission": "READ" }, @@ -236,8 +234,7 @@ func TestPRCreate_cross_repo_same_branch(t *testing.T) { "name": "REPO", "owner": {"login": "MYSELF"}, "defaultBranchRef": { - "name": "default", - "target": {"oid": "deadbeef"} + "name": "default" }, "viewerPermission": "WRITE" } } } @@ -515,7 +512,7 @@ func TestPRCreate_defaults_error_autofill(t *testing.T) { _, err := RunCommand(prCreateCmd, "pr create -f") - eq(t, err.Error(), "could not compute title or body defaults: could not find any commits between master and feature") + eq(t, err.Error(), "could not compute title or body defaults: could not find any commits between origin/master and feature") } func TestPRCreate_defaults_error_web(t *testing.T) { @@ -533,7 +530,7 @@ func TestPRCreate_defaults_error_web(t *testing.T) { _, err := RunCommand(prCreateCmd, "pr create -w") - eq(t, err.Error(), "could not compute title or body defaults: could not find any commits between master and feature") + eq(t, err.Error(), "could not compute title or body defaults: could not find any commits between origin/master and feature") } func TestPRCreate_defaults_error_interactive(t *testing.T) {