go get有没有办法把包下载到指定目录?

1,397 views
Skip to first unread message

fan gao

unread,
Dec 17, 2013, 12:47:43 AM12/17/13
to golang中国邮件列表
go get有没有办法把包下载到指定目录?

minux

unread,
Dec 17, 2013, 12:52:12 AM12/17/13
to golang...@googlegroups.com


On Dec 17, 2013 12:47 AM, "fan gao" <ria...@gmail.com> wrote:
>
> go get有没有办法把包下载到指定目录?
除了指定 $GOPATH 之外,没有别的办法。

Dray

unread,
Dec 17, 2013, 1:43:08 AM12/17/13
to golang...@googlegroups.com
可以编写脚本,临时指定 $GOPATH 项目编译完成后再自动还原

fanflash於 2013年12月17日星期二UTC+8下午1時47分43秒寫道:
go get有没有办法把包下载到指定目录?

fan gao

unread,
Dec 17, 2013, 2:20:53 AM12/17/13
to golang中国邮件列表
很不习惯GOOGLE这种把非标准包跟标准包放一块的做法。。。


--
--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Golang-China”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 golang-china...@googlegroups.com
要在网络上查看此讨论,请访问 https://groups.google.com/d/msgid/golang-china/47ff4734-d958-4c08-a7d5-d5b5c7f8419c%40googlegroups.com。
要查看更多选项,请访问 https://groups.google.com/groups/opt_out。

minux

unread,
Dec 17, 2013, 2:25:33 AM12/17/13
to golang...@googlegroups.com


On Dec 17, 2013 2:20 AM, "fan gao" <ria...@gmail.com> wrote:
> 很不习惯GOOGLE这种把非标准包跟标准包放一块的做法。。。
标准包在GOROOT里,非标准包在GOPATH里,怎么放一起了?

实际上,原来go get是可以get到GOROOT,但是后来禁止了。

chai2010

unread,
Dec 17, 2013, 4:02:58 AM12/17/13
to golang中文小组
建议像python那样,
go get的包全部放到 $GOROOT/src/pkg/site-packages.
GOPATH只是针对本地的包.


--
--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Golang-China”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 golang-china...@googlegroups.com

minux

unread,
Dec 17, 2013, 10:07:57 AM12/17/13
to golang...@googlegroups.com


On Dec 17, 2013 4:03 AM, "chai2010" <chais...@gmail.com> wrote:
>
> 建议像python那样,
> go get的包全部放到 $GOROOT/src/pkg/site-packages.
> GOPATH只是针对本地的包.

GOROOT里面的包是有特权的,会覆盖任何同名的在 GOPATH 里的包,这也是 go get 不再允许 get 到 GOROOT 里的原因。

GOPATH 可以设置多个,所以我不觉得这是问题。

chai2010

unread,
Dec 17, 2013, 7:41:34 PM12/17/13
to golang中文小组
如果GOPATH有多个的话, $GOPATH/bin设置会很不爽.
其实go get的包应该默认下载到一个固定目录.


--
--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Golang-China”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 golang-china...@googlegroups.com

Jay True

unread,
Dec 17, 2013, 7:50:18 PM12/17/13
to golang...@googlegroups.com
On Wednesday, December 18, 2013, chai2010 wrote:
如果GOPATH有多个的话, $GOPATH/bin设置会很不爽.
其实go get的包应该默认下载到一个固定目录.

可以设置 $GOBIN 的。 


--
歌词唱清楚,不是周杰伦
Home Page: http://glacjay.info/


Viney Chow

unread,
Dec 17, 2013, 8:37:12 PM12/17/13
to golang-china
下载到同一个目录确实比较好。不然使用meld工具比较代码的时候太不简洁了。
每次还会以为GOPATH设置的问题找不到包。很多项目都是公用私有包的,如果有一个项目私有包有变动,就会导致GOPATH指定的私有包冲突。
尽管这个问题可以避免,但是还是支持go get下来的包放在指定目录。

------------------------------------------------------
Viney



--
--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Golang-China”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 golang-china...@googlegroups.com

minux

unread,
Dec 18, 2013, 12:15:55 AM12/18/13
to golang...@googlegroups.com

2013/12/17 Viney Chow <viney...@gmail.com>
下载到同一个目录确实比较好。不然使用meld工具比较代码的时候太不简洁了。
这我就不明白,如果想下载到一个目录,那就设置一个 GOPATH 好了,为啥现在的机制更灵活反而不愿意呢? 
每次还会以为GOPATH设置的问题找不到包。很多项目都是公用私有包的,如果有一个项目私有包有变动,就会导致GOPATH指定的私有包冲突。
尽管这个问题可以避免,但是还是支持go get下来的包放在指定目录。
就用 GOPATH 指定好了,不过是 $GOPATH/src 建了一层子目录而已,这个有那么严重的问题么? 

lianxiang

unread,
Dec 18, 2013, 1:07:19 AM12/18/13
to golang...@googlegroups.com
https://github.com/ChuckHa/goenv  

可以自己写个shell脚本

-- 
lianxiang
Sent with Sparrow

--
--
官网: http://golang-china.org/
IRC: irc.freenode.net #golang-china
@golangchina
---
您收到此邮件是因为您订阅了 Google 网上论坛的“Golang-China”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 golang-china...@googlegroups.com

Reply all
Reply to author
Forward
0 new messages