草庐IT

git发散重命名

全部标签

go - 包命名 : error exporting variable

我的目录结构是这样的:Animal/dog/chiwawa.gorabbit.gochiwawa.go和rabbit.go都在文件顶部打包名为:“packageanimal”。但是,当我尝试在rabbit.go中使用chiwawa.go中的变量varFood=apple时,出现错误-undefined:食物。当我将chiwawa.go直接放在Animal下而没有dog目录时,我没有任何问题。这在Go中是故意的吗?我可以在保留包名称和目录结构的同时解决这个问题吗? 最佳答案 HowtoWriteGoCodeWorkspacesTheg

go - 如何使用 golang 在 git repo 中 check out 特定的 SHA

我需要帮助使用golang将代码checkout到特定SHA编号的gitrepo 最佳答案 这实际上是一个Go问题,因为它指的是go-gitlibrary.因此,您可以执行以下操作:packagemainimport("fmt"git"gopkg.in/src-d/go-git.v4""gopkg.in/src-d/go-git.v4/plumbing")//Basicexampleofhowtocheckoutaspecificcommit.funcmain(){//Clonethegivenrepositorytothegive

Go:调用函数时如何使用命名参数?

如何在使用命名参数时调用函数?(如果不清楚什么是命名参数,这里有一个usingtheminPython的例子)我想做的事的例子:funcAdd(aint,bint)int{returna+b}funcmain(){c:=Add(a:1,b:3)returnc}但是,上面给出了错误:unexpected:,expectingcommaor)(指的是紧跟在'a'之后的':') 最佳答案 Go没有命名参数。我知道在Go中最接近命名参数的是使用结构作为输入。因此,对于您的示例,您可以这样做-typeInputstruct{AintBint}

go - exec git 命令拒绝重定向到 Go 中的文件

我正在尝试从go调用git日志并将输出重定向到给定文件。cmdArgs=[]string{"log","--numstat","--reverse",fmt.Sprintf("%s..HEAD","89c98f5ec48c8ac383ea9e27d792c3dc77fa6240"),`--pretty="format:=%P%H%an%ae%ad%at%s%b"`}cmdArgs=append(cmdArgs,">>"+workingDir+"/logs/"+repoName+".log&&cat"+workingDir+"/logs/"+repoName+".log")cmd:=ex

go - Go中多词结构类型的命名标准是什么?

我正在阅读关于如何命名结构和包含它们的文件的不同意见。我也很难找到有关多词结构的详细信息。在以下项目中命名我的结构和包含它们的文件的最标准方法是什么?我有一个包含2个结构的可执行项目:FooFooBar我想在自己的文件中声明结构,以便创建测试文件。每个都将导入到main.go中。我是否将结构命名为PascalCase?如果不是,怎么办?go文件应该如何命名?编辑:此文档是我首先使用PascalCase的原因,但它是一个单词结构,并没有显示它在单独的文件中使用。https://tour.golang.org/moretypes/2 最佳答案

go - 在 Go 中命名以小写字母开头的专有名词

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭5年前。Improvethisquestion如果类型应该公开/导出并且名称应代表:iPhoneX、iOS、eBay等,您如何命名?你把它们命名为IPhoneX和IOS吗?或者如果现实世界中的名称以小写字母开头,您如何命名类型?

git - `go get` 首先失败,然后工作

go命令gogetgithub.com/cloudnativego/gogo-service/service第一次失败,但在第二次运行时通过了。整个事件序列:[23:47]$gogetgithub.com/cloudnativego/gogo-service/service#cd/Users/../github.com/cloudnativego/gogo-service;gitsubmoduleupdate--init--recursiveNosubmodulemappingfoundin.gitmodulesforpath'vendor/github.com/cloudfoundr

go - 如果我的 key 都被命名为 "Key",我如何从 BSON 获取 JSON?

我正在尝试从数据库中读取数据,然后将结果作为json返回给用户。发生的事情是我得到如下输出:[{"Key":"foo","Value":"bar"}]当我想得到:"{"foo":"bar"}"我如何获得前者?示例:(未显示从数据库读取并将Raw转换为字符串)packagemainimport("encoding/json""fmt""go.mongodb.org/mongo-driver/bson")funcmain(){vardata="{\"foo\":\"bar\"}"vartestInterfaceinterface{}e:=bson.UnmarshalExtJSON([]by

git - 去获取没有互联网访问权限的服务器

由于安全锁定,我们的服务器无法连接到Internet。为了能够将GO与第3方模块一起使用,我看到我们必须选择1)我们的笔记本电脑可以连接到互联网。是否可以在笔记本电脑上“去获取github...”,然后将该模块复制到服务器?我们将如何做到这一点?2)我们在网络上有一个GOGS服务器。是否可以克隆github存储库,然后将其作为私有(private)存储库推送到GOGS服务器?我们需要对GO配置进行哪些更改?(如果可能的话,这将是首选) 最佳答案 很可能所有项目的所有源代码和所有外部库都在$GOPATH目录中。只需同步所需的文件夹即可

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

运行下面的代码,我希望github托管项目username/mysuperrepo被克隆(一旦我访问clone路径)到这个go项目所在的repo运行,但它不起作用。停止应用程序后,mysuperrepo没有目录,没有任何我期望运行gitclonehttps://github.com/username/mysuperrepo.git的文件从命令行问题:为什么下面的代码不会在go程序运行的目录中生成repo的克隆?funcclone(whttp.ResponseWriter,r*http.Request){varrepo="https://github.com/username/mysup