无需 Git 和 Hg 等版本管理工具,就可以下载指定版本的 Go 语言包
https://gopm.io/
分类目录归档:Golang
go get 使用代理
目前仅支持http以及https代理,不支持socks,所以如果是用ssh需要参考另外一篇文章:使用privoxy+ssh实现共享科学上网
#https
https_proxy=127.0.0.1:8118 go get url
#http
http_proxy=127.0.0.1:8118 go get url
Setting proxies for source code used by go get (listed in GoGetTools)
git
$ git config [--global] http.proxy http://proxy.example.com:port
mercurial
Edit ~/.hgrc and add the following:
[http_proxy]
host=proxy.example.com:port
svn
Edit ~/.subversion/servers and add the following:
[Global]
http-proxy-host=proxy.example.com
http-proxy-port=xxxx
Go的50度灰:Golang新开发者要注意的陷阱和常见错误
http://colobu.com/2015/09/07/gotchas-and-common-mistakes-in-go-golang/
原文: 50 Shades of Go: Traps, Gotchas, and Common Mistakes for New Golang Devs
翻译: Go的50度灰:新Golang开发者要注意的陷阱、技巧和常见错误, 译者: 影风LEY
Go是一门简单有趣的语言,但与其他语言类似,它会有一些技巧。。。这些技巧的绝大部分并不是Go的缺陷造成的。如果你以前使用的是其他语言,那么这其中的有些错误就是很自然的陷阱。其它的是由错误的假设和缺少细节造成的。
如果你花时间学习这门语言,阅读官方说明、wiki、邮件列表讨论、大量的优秀博文和Rob Pike的展示,以及源代码,这些技巧中的绝大多数都是显而易见的。尽管不是每个人都是以这种方式开始学习的,但也没关系。如果你是Go语言新人,那么这里的信息将会节约你大量的调试代码的时间。
awesome-go
https://github.com/avelino/awesome-go
TOML parser for Golang with reflection
https://github.com/BurntSushi/toml
https://github.com/naoina/toml
go 并发控制
LiteIDE Desktop配置
文件保存在/usr/share/applications/liteide.desktop
[Desktop Entry]
Version=27
Type=Application
Name=LiteIDE
GenericName=LiteIDE
Comment=LiteIDE is a simple, open source, cross-platform Go IDE.
Exec=/home/ning/tool/liteide/bin/liteide %F
Terminal=false
MimeType=text/plain;
Icon=/home/ning/tool/liteide/share/liteide/welcome/images/liteide400.png
Categories=TextEditor;Development;
StartupNotify=true
Actions=Window;Document;
windows安装go-sqlite3失败,提示找不到gcc
go get github.com/mattn/go-sqlite3
时失败,提示exec: "gcc": executable file not found in %PATH%
,是因为没有安装gcc。
去http://tdm-gcc.tdragon.net/download下载一个,32位windows下载 tdm-gcc-4.8.1-3.exe,64位下载 tdm64-gcc-4.8.1-3.exe
golang如何更新第三方包
go get -u packageurl
goose – golang database migration tool
goose是一个golang的数据库迁移工具
安装
go get bitbucket.org/liamstask/goose/cmd/goose
创建目录
mkdir db
初始化dbconf
# vim db/dbconf.yml
development:
driver: mymysql
open: dbname/username/password
import: github.com/ziutek/mymysql/godrv
dialect: mysql
新增迁移脚本
goose create init sql
升级
goose up
降级
goose down
重做
goose redo
状态
goose status
SQL迁移
-- +goose Up
CREATE TABLE post (
id int NOT NULL,
title text,
body text,
PRIMARY KEY(id)
);
-- +goose Down
DROP TABLE post;