使用 os.exec("git", "clone") 克隆一个 repo

运行下面的代码,我希望将 github 托管的项目username/mysuperrepo(一旦我访问clone 路径)克隆到运行此 go 项目的 repo 中,但它不起作用。停止应用程序后,mysuperrepo没有任何我希望git clone https://github.com/username/mysuperrepo.git从命令行运行的文件的目录


问题:为什么下面的代码不会在 go 程序运行的目录中生成 repo 的克隆?


func clone(w http.ResponseWriter, r *http.Request){

  var repo = "https://github.com/username/mysuperrepo.git"

  exec.Command("git", "clone", repo)

  w.Write([]byte(repo))

}

func main(){

  http.HandleFunc("/clone/", clone)

  log.Fatal(http.ListenAndServe(":8080", nil))

}


叮当猫咪
浏览 142回答 1
1回答

肥皂起泡泡

您需要调用Run才能实际执行命令。cmd := exec.Command("git", "clone", repo)err := cmd.Run()if err != nil {    // something went wrong}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go