Skip to content

Commit e513333

Browse files
dfireBirddfireBird
authored andcommitted
feat: implement prompt for remote renaming
1 parent 116d581 commit e513333

File tree

1 file changed

+18
-2
lines changed

1 file changed

+18
-2
lines changed

pkg/cmd/repo/fork/fork.go

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"strings"
88
"time"
99

10+
"github.com/AlecAivazis/survey/v2"
1011
"github.com/cli/cli/api"
1112
"github.com/cli/cli/context"
1213
"github.com/cli/cli/git"
@@ -210,14 +211,29 @@ func forkRun(opts *ForkOptions) error {
210211
}
211212
}
212213
if remoteDesired {
213-
remoteName := "origin"
214+
remoteName := ""
215+
err = prompt.SurveyAskOne(&survey.Input{
216+
Message: "Fork remote name?",
217+
Default: "origin",
218+
}, &remoteName)
219+
if err != nil {
220+
return fmt.Errorf("failed to prompt: %w", err)
221+
}
214222

215223
remotes, err := opts.Remotes()
216224
if err != nil {
217225
return err
218226
}
219227
if _, err := remotes.FindByName(remoteName); err == nil {
220-
renameTarget := "upstream"
228+
renameTarget := ""
229+
err = prompt.SurveyAskOne(&survey.Input{
230+
Message: "There is already remote with same name. Source remote name?",
231+
Default: "upstream",
232+
}, &renameTarget)
233+
if err != nil {
234+
return fmt.Errorf("failed to prompt: %w", err)
235+
}
236+
221237
renameCmd, err := git.GitCommand("remote", "rename", remoteName, renameTarget)
222238
if err != nil {
223239
return err

0 commit comments

Comments
 (0)