我刚刚写了一个关于如何使用新的go tool和github.com的简短步骤指南。可能会发现它很有用:
1.设置您的GOPATH
您可以将环境变量GOPATH
设置为您喜欢的任何目录。如果你有更大的项目,为每个项目创建一个不同的GOPATH可能是一个好主意。我会特别推荐这种方法用于部署,因此为项目A更新库不会中断项目B,这可能需要早期版本的同一个库。
另请注意,您可以将GOPATH设置为由冒号分隔的目录列表。所以你可能有一个包含所有常用软件包的GOPATH,并且为每个项目使用附加软件包或不同版本的现有软件包分开GOPATHS。
但是,除非您正在同时处理许多不同的Go项目,否则它可能足以在本地生成一个GOPATH。所以,让我们创建一个:
mkdir $HOME/gopath
然后,你需要设置两个环境变量来告诉go tool在那里可以找到现有的围棋包和它应该安装新的。最好将以下两行添加到您的~/.bashrc
或~/.profile
(并且不要忘记在之后重新加载.bashrc)。
export GOPATH="$HOME/gopath"
export PATH="$GOPATH/bin:$PATH"
2.创建一个新的项目
如果你想创建应在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.编写应用程序
开始编码,不要忘记git add
和git commit
您的文件。另外,不要使用像import "./utils"
这样的相对导入子包。他们目前没有文件,根本不应该使用,因为他们不会使用go工具。改用github.com/myname/myproject/utils
之类的导入。
4.发布项目
创建new repository at github.com,上传您的SSH公共密钥,如果你还没有没有做过,推动更改到远程仓库:
git remote add origin [email protected]:myname/myproject.git
git push origin master
5 。继续处理你的项目
如果你在你的.bashrc中设置了GOPATH,并且你已经为你的项目创建了一个符号链接在您的家庭文件夹中,您只需键入cd myproject/
并在那里编辑一些文件。之后,您可以使用git commit -a
提交更改,并通过执行git push
将它们发送到github.com。
我最近一直在接受这个问题。我开始做的只是一个GOPATH,并将我的项目融入其中。这样我可以轻松构建,但将实际项目保留在自己的回购站中。这感觉像是一个非常干净的方法。 – jdi 2012-05-05 05:53:12
Github路径往往很长,我很懒,所以我给我的bashrc添加了一个别名:'alias g =“cd /home/me/goroot/src/github.com/me/”'。现在我可以通过简单的g命令快速访问我的项目。 – 2014-01-06 15:57:03
你如何跟踪你的软件包使用的外部依赖关系? – mohi666 2014-11-19 01:47:35