"exit status 128" пытается создать git-ветки из golang - PullRequest
1 голос
/ 25 марта 2019

Я пытаюсь создать "ветку" из golang.Следующий код не работает:

reader := bufio.NewReader(os.Stdin)
fmt.Print(color.RedString("New feature description: "))
featureName, _ := reader.ReadString('\n')
featureName = strings.ReplaceAll(featureName, " ", "-")
featureBranchName := "feature/" + featureName
cmdStartBranch := "git"
arguments := []string{"checkout", "-b", featureBranchName}
if _, err := exec.Command(cmdStartBranch, arguments...).Output(); err != nil {
    fmt.Println(color.RedString(err.Error()))
    os.Exit(1)
}

Но жесткое кодирование featureBranchName работает:

cmdStartBranch := "git"
arguments := []string{"checkout", "-b", "feature/ciaone-proprio"}
if _, err := exec.Command(cmdStartBranch, arguments...).Output(); err != nil {
    fmt.Println(color.RedString(err.Error()))
    os.Exit(1)
}

1 Ответ

1 голос
/ 25 марта 2019

ReadString ('\ n') возвращает разделитель '\ n', его необходимо удалить.

featureName, err := reader.ReadString('\n')
if err == nil {
    n := len(featureName)
    featureName = featureName[:n-1]
}

...

...