golang 官方包管理器安裝與基本用法

安裝(linux下源碼安裝)

# 注意:需要golang環境
go get -u github.com/golang/dep
cd github.com/golang/dep/cmd/dep
go build

# 然後生成dep二進制執行文件,把dep放於PATH路徑下方便後續操作

# 建立一個demo測試環境

mkdir -p demo/src/app && cd demo/src/app && export GOPATH=`pwd`

# dep 初始化
dep init

# 執行後生成如下文件
tree
# .
# ├── Gopkg.lock # 這個不用管
# ├── Gopkg.toml # 定製三方包規則文件
# └── vendor # 各種三方包文件目錄
# 
# 1 directory, 2 files

# 打開Gopkg.toml,開始編輯
# 例如,要添加一個三方包:
# required = ["github.com/gorilla/mux"]

# 修改後執行下面命令進行更新,注意,此時需要建一個正常編譯的go文件,我們這裏建立一個main.go,內容如下:
# package main
# func main() {}
dep ensure

# 查看vendor目錄,需要的包已經安裝了
tree vender
# vendor/
# └── github.com
#     └── gorilla
#         ├── context
#         │   ├── context.go
#         │   ├── context_test.go
#         │   ├── doc.go
#         │   ├── LICENSE
#         │   └── README.md
#         └── mux
#             ├── bench_test.go
#             ├── context_gorilla.go
#             ├── context_gorilla_test.go
#             ├── context_native.go
#             ├── context_native_test.go
#             ├── doc.go
#             ├── LICENSE
#             ├── mux.go
#             ├── mux_test.go
#             ├── old_test.go
#             ├── README.md
#             ├── regexp.go
#             └── route.go
# 
# 4 directories, 18 files

# 通常,我們用下面命令查看狀態
dep status

# 執行結果如下
# PROJECT                     CONSTRAINT  VERSION  REVISION  LATEST   PKGS USED
# github.com/gorilla/context  v1.1        v1.1     1ea2538   1ea2538  1  
# github.com/gorilla/mux      v1.6.0      v1.6.0   7f08801   7f08801  1 

# 如果我們對三方包有版本要求,比如github.com/gorilla/mux需要1.6.0以下的版本
# 打開Gopkg.toml,添加如下內容:
# [[constraint]]
#   name = "github.com/gorilla/mux"
#   version = "<1.6.0"
# 然後執行:
dep ensure

# 最終查看狀態:
dep status
# PROJECT                     CONSTRAINT  VERSION  REVISION  LATEST   PKGS USED
# github.com/gorilla/context  v1.1        v1.1     1ea2538   1ea2538  1  
# github.com/gorilla/mux      <1.6.0      v1.5.0   24fca30   24fca30  1 

# 最終,項目目錄結構如下:
tree
# .
# ├── Gopkg.lock
# ├── Gopkg.toml
# ├── main.go
# └── vendor
#     └── github.com
#         └── gorilla
#             ├── context
#             │   ├── context.go
#             │   ├── context_test.go
#             │   ├── doc.go
#             │   ├── LICENSE
#             │   └── README.md
#             └── mux
#                 ├── bench_test.go
#                 ├── context_gorilla.go
#                 ├── context_gorilla_test.go
#                 ├── context_native.go
#                 ├── context_native_test.go
#                 ├── doc.go
#                 ├── LICENSE
#                 ├── mux.go
#                 ├── mux_test.go
#                 ├── old_test.go
#                 ├── README.md
#                 ├── regexp.go
#                 └── route.go
# 
# 5 directories, 21 files

# 詳細文檔參見:https://github.com/golang/dep/

WINDOWS 安裝

# 注意:需要golang環境
git clone https://github.com/golang/dep
# 下載完成後進行項目目錄 下面是以dep放在C盤根目錄爲例
cd c:/dep/cmd/dep
go build

# 然後生成dep二進制執行文件(dep.exe),把dep.exe的目錄設置爲PATH變量方便後續操作

# 建立一個demo測試環境有:
#1、進入windows的變更裏設置的GOPATH的src目錄下
#2、建立一個文件夾
mkdir  demo
cd demo
# dep 初始化
dep init

# 執行後生成如下文件
tree
# .
# ├── Gopkg.lock # 這個不用管
# ├── Gopkg.toml # 定製三方包規則文件
# └── vendor # 各種三方包文件目錄
# 
# 1 directory, 2 files

# 打開Gopkg.toml,開始編輯
# 例如,要添加一個三方包:
# required = ["github.com/gorilla/mux"]

# 修改後執行下面命令進行更新,注意,此時需要建一個正常編譯的go文件,我們這裏建立一個main.go,內容如下:
# package main
# func main() {}
dep ensure

# 查看vendor目錄,需要的包已經安裝了
tree vender
# vendor/
# └── github.com
#     └── gorilla
#         ├── context
#         │   ├── context.go
#         │   ├── context_test.go
#         │   ├── doc.go
#         │   ├── LICENSE
#         │   └── README.md
#         └── mux
#             ├── bench_test.go
#             ├── context_gorilla.go
#             ├── context_gorilla_test.go
#             ├── context_native.go
#             ├── context_native_test.go
#             ├── doc.go
#             ├── LICENSE
#             ├── mux.go
#             ├── mux_test.go
#             ├── old_test.go
#             ├── README.md
#             ├── regexp.go
#             └── route.go
# 
# 4 directories, 18 files

# 通常,我們用下面命令查看狀態
dep status

# 執行結果如下
# PROJECT                     CONSTRAINT  VERSION  REVISION  LATEST   PKGS USED
# github.com/gorilla/context  v1.1        v1.1     1ea2538   1ea2538  1  
# github.com/gorilla/mux      v1.6.0      v1.6.0   7f08801   7f08801  1 

# 如果我們對三方包有版本要求,比如github.com/gorilla/mux需要1.6.0以下的版本
# 打開Gopkg.toml,添加如下內容:
# [[constraint]]
#   name = "github.com/gorilla/mux"
#   version = "<1.6.0"
# 然後執行:
dep ensure

# 最終查看狀態:
dep status
# PROJECT                     CONSTRAINT  VERSION  REVISION  LATEST   PKGS USED
# github.com/gorilla/context  v1.1        v1.1     1ea2538   1ea2538  1  
# github.com/gorilla/mux      <1.6.0      v1.5.0   24fca30   24fca30  1 

# 最終,項目目錄結構如下:
tree
# .
# ├── Gopkg.lock
# ├── Gopkg.toml
# ├── main.go
# └── vendor
#     └── github.com
#         └── gorilla
#             ├── context
#             │   ├── context.go
#             │   ├── context_test.go
#             │   ├── doc.go
#             │   ├── LICENSE
#             │   └── README.md
#             └── mux
#                 ├── bench_test.go
#                 ├── context_gorilla.go
#                 ├── context_gorilla_test.go
#                 ├── context_native.go
#                 ├── context_native_test.go
#                 ├── doc.go
#                 ├── LICENSE
#                 ├── mux.go
#                 ├── mux_test.go
#                 ├── old_test.go
#                 ├── README.md
#                 ├── regexp.go
#                 └── route.go
# 
# 5 directories, 21 files

# 詳細文檔參見:https://github.com/golang/dep/

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章