dep
є офіційним експериментом з управління залежностями Go Go. Для компіляції потрібен Go 1.8 або новіший.
Щоб почати керувати залежностями dep
, виконайте наступну команду з кореневого каталогу вашого проекту:
dep init
Після виконання буде створено два файли: Gopkg.toml
("manifest"), Gopkg.lock
а необхідні пакети будуть завантажені вvendor
каталог.
Припустимо, що у вас є проект, який використовує github.com/gorilla/websocket
пакет. dep
генерує такі файли:
Gopkg.toml
# Gopkg.toml example
#
# Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md
# for detailed Gopkg.toml documentation.
#
# required = ["github.com/user/thing/cmd/thing"]
# ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"]
#
# [[constraint]]
# name = "github.com/user/project"
# version = "1.0.0"
#
# [[constraint]]
# name = "github.com/user/project2"
# branch = "dev"
# source = "github.com/myfork/project2"
#
# [[override]]
# name = "github.com/x/y"
# version = "2.4.0"
[[constraint]]
name = "github.com/gorilla/websocket"
version = "1.2.0"
Gopkg.lock
# This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'.
[[projects]]
name = "github.com/gorilla/websocket"
packages = ["."]
revision = "ea4d1f681babbce9545c9c5f3d5194a789c89f5b"
version = "v1.2.0"
[solve-meta]
analyzer-name = "dep"
analyzer-version = 1
inputs-digest = "941e8dbe52e16e8a7dff4068b7ba53ae69a5748b29fbf2bcb5df3a063ac52261"
solver-name = "gps-cdcl"
solver-version = 1
Є команди , які допоможуть вам оновлення / видалення / і т.д. пакетів, будь ласка , знайти більш детальну інформацію про офіційному GitHub репо з dep
(інструмент управління залежностями для Go).
go get
Якщо ви не хочете , це не правильний інструмент, якщо ви хочете такої поведінки. Ви можете розібратися, щоб вирішити вашу конкретну проблему.