golang 的包管理一直沒有官方統一的解決方案,因此也產生了很多非官方的包管理工具。 之前我一直使用的 gb( 能夠很好的隔開各個 golang 工程,當時 gb 建立的工程不太融入已有的 gopath 中。 gb 相當於是把工程的目錄作為 gopath,並且它的 vendor 目錄也和 golang 自己的 vendor 不太一樣。
dep 的 roadmap 中已經制定了成為 golang 官方包管理工具的計畫, 所以,使用 dep 來組織自己的 golang 專案以後能夠更好的和其他 golang 專案結合。
我的 golang 的配置主要分 3 塊:
在 $goprojects/src 下建立自己的 golang 專案
cd $goprojects/src
mkdir mygolangproject
cd mygolangproject
touch main.go
# write some golang code in main.go
dep init
dep ensure # add dependencies for main.go
go install # compile mygolangproject
mygolangproject 可以作為乙個 git 倉庫提交到遠端的 git 倉庫,以便於和其他人分享
其實很多 golang 的包管理工具都不錯,甚至不用包管理工具,通過合理的劃分 gopath 也可以達到 golang 專案管理的目的。 使用 dep,一方面是因為它以後很有可能會成為 golang 的官方包管理工具,另一方面也是為了更好的分享 golang **, 畢竟通過 dep,別人可以一鍵安裝所有依賴,避免寫很多安裝說明的文件。
使用 dep 配置 golang 開發環境
golang 的包管理一直沒有官方統一的解決方案,因此也產生了很多非官方的包管理工具。之前我一直使用的 gb 能夠很好的隔開各個 golang 工程,當時 gb 建立的工程不太融入已有的 gopath 中。gb 相當於是把工程的目錄作為 gopath,並且它的 vendor 目錄也和 golang ...
使用 golang 開發selpg
程式設計 開發linux命令列實用程式 cli 命令列實用程式開發基礎 selpg從標準輸入或從作為命令列引數給出的檔名讀取文字輸入。它允許使用者指定來自該輸入並隨後將被輸出的頁面範圍。command input file command command input file other comma...
golang開發 channel使用
channel主要是用於多個goroutine之間通訊 channel是引用型別,需要實用make來建立channel,如下 make chan type,buffer chan type 通道的型別 buffer 是可選引數,代表通道緩衝區的大小 省略則代表無緩衝 向channel裡面寫入資料使用...