我刚刚就如何使用新的go tool和github.com写了一个简短的分步指南.您可能会发现它很有用:
1. Setup your GOPATH
您可以将环境变量GOPATH
设置为您喜欢的任何目录.如果你有更大的项目, for each 项目创建不同的GOPATH可能是个好主意.我特别推荐这种方法用于部署,这样更新项目a的库不会 destruct 项目B,因为项目B可能需要同一个库的早期版本.
还要注意,您可以将GOPATH设置为由冒号分隔的目录列表.因此,您可能有一个包含所有常用包的GOPATH,并且每个项目都有单独的GOPATH,其中包含其他包或现有包的不同版本.
但是,除非你同时在很多不同的围棋项目上工作,否则在当地只有一个GOPATH可能就足够了.因此,让我们创建一个:
mkdir $HOME/gopath
然后,您需要设置两个环境变量来告诉go tool它可以在哪里找到现有的GO包,以及应该在哪里安装新的GO包.最好将以下两行添加到您的~/.bashrc
或~/.profile
中(之后不要忘记重新加载您的.bashrc).
export GOPATH="$HOME/gopath"
export PATH="$GOPATH/bin:$PATH"
2. Create a new project个
如果您想要创建一个新的Go项目,该项目应该在以后的github.com版本中托管,那么您应该在$GOPATH/src/github.com/myname/myproject
版本下创建该项目.路径必须与github.com repo的URL匹配,因为Go工具将遵循相同的约定.因此,让我们创建项目根目录,并在那里初始化一个新的git存储库:
mkdir -p $GOPATH/src/github.com/myname/myproject
cd $GOPATH/src/github.com/myname/myproject
git init
因为我不喜欢键入这样长的路径,我通常会在主文件夹中为我当前正在处理的项目创建符号链接:
ln -s $GOPATH/src/github.com/myname/myproject ~/myproject
3. Write your application个
开始编码,别忘了git add
和git commit
你的文件.此外,不要将相对导入(如import "./utils"
)用于子包.它们目前没有文档记录,根本不应该使用,因为它们不能与Go工具一起使用.取而代之的是使用github.com/myname/myproject/utils
这样的导入.
4. Publish your project个
创建一个new repository at github.com,上传您的SSH公钥(如果您以前没有这样做过),并将您的更改推送到远程存储库:
git remote add origin git@github.com:myname/myproject.git
git push origin master
5. Continue working on your project个
如果您在.bashrc中设置了GOPATH,并且在主文件夹中创建了指向项目的符号链接,则只需键入cd myproject/
并在那里编辑一些文件即可.然后,您可以使用git commit -a
提交更改,并通过执行git push
将它们发送到github.com.