安裝(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/