#9.9 通过git打包和安装 ##9.9.1 安装到github 以上的方式对于本地包来说是可以的,但是我们如何打包代码到开发者圈子呢?那么我们需要一个云端的源码的版本控制系统,比如著名的git。 在Linux和OS X的机器上git是默认安装的,在windows上你必须先自行安装,参见http:// help.github.com/win-set-up-git/ 这里将通过为9.8章节中的uc包创建一个git仓库作为演示 进入到uc包目录下并创建一个git仓库在里面: git init . 信息提示: Initialized empty git repository in .../uc 每一个git项目都需要一个对包进行描述的README文件,所以打开你的文本编辑器(gedit,notepad,LiteIde)添加一些说明进去。 然后添加所有文件到仓库:git add README uc.go uc_test.go Makefile 标记为第一个版本: git commit -m "initial rivision" 现在必须去登录github网站: https://github.com 也许你还不能登录,你可以去https://github.com/plans注册一个开源项目的免费帐号。输入正确的帐号密码和有效的邮箱地址并进一步创建用户。然后你将获得一个git命令的列表。本地仓库的操作的命令已经完成。一个优秀的系统http://help.github.com/在你遇到任何问题的时候将引导你。 在云端创建一个新的uc仓库;发布的指令为(NNNN替代用户名): git remote add orign git@github.com:NNNN/uc.git git push -u origin master 操作完成后检查github上的包页面: http://github.com/NNNN/uc ##9.9.2 从github安装 如果有人想你的远端项目到本地机器,打开终端并执行: go install github.com/NNNN/uc NNNN是你在github上的用户名 复制 ->uc.a包到目录$GOROOT/PKG/LINUX_AMD64/github.com ->源码到$GOROOT/src/pkg/github.com/NNNN/uc 这样现在这台机器上的其他Go应用程序也可以通过导入路径:"github.com/NNNN/uc"代替"./uc/uc"来使用。 也可以将其缩写为: import uc "github.com/NNNN/uc" 然修改Makefile: 将TARG=uc替换为TARG-github.com/NNNN/uc Gomake(和go install)将通过$GOROOT下的本地版本进行工作。 网站和版本控制系统:其他的选择 主要网站有(括号中为网站所使用的版本控制系统): * bitbucket(hg) * github(git) * googlecode(hg/git/svn) * launchpad(bzr) 版本控制系统可以选择你熟悉的或者本地使用的代码版本控制。Go核心代码的仓库是使用Mercurial(hg)来控制的,所以它是一个最可能保证你可以得到开发者项目中最好的软件。Git也很出名,同样也适用。如果你从未使用过的版本控制,这些网站有一些很好的帮助并且你可以通过在谷歌搜索"{name} tutorial"name为你想要使用的版本控制系统得到许多很好的教程。