Hướng dẫn cài đặt và sử dụng Go Dep


  • Trùm cuối

    4e7edae6-594e-4067-ac92-3d451e98c2e4-image.png

    Go Dep là một công cụ chủ yếu dành cho các nhà phát triển, để hỗ trợ công việc cài đặt và phân phối mã nguồn. Nó không dành cho người dùng cuối đang cài đặt Go - đó là công việc của Go Get.

    Bài viết này sẽ giúp các bạn tìm hiểu cài đặt và sử dụng Go Dep cho dự án.

    Phiên bản

    Các bạn nên sử dụng phiên bản đã được released của dep sẽ ổn định và đảm bảo hơn.

    Cài đặt

    Các bản cài đặt có thể tải về trên trang chủ. Các bạn có thể sử dụng script install.sh để tự động cài đặt trên nền tảng local của các bạn.

    $ curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh
    

    MacOS
    Cài đặt và cập nhật phiên bản mới nhất với Homebrew:

    $ brew install dep
    $ brew upgrade dep
    

    Arch Linux
    Cài đặt dep package:

    pacman -S dep
    

    Cài đặt từ mã nguồn

    Đoạn mã dưới đây sẽ cài đặt bản phát hành dep mới nhất từ mã nguồn và biên dịch sang nhị phân để hoạt động.

    Lưu ý rằng phương pháp này không được khuyến khích sử dụng bởi nó không đảm bảo sự ổn định mà chỉ phù hợp với những người sẵn sàng thử nghiệm và cung cấp các thông tin phản hồi nhanh!

    go get -d -u github.com/golang/dep
    cd $(go env GOPATH)/src/github.com/golang/dep
    DEP_LATEST=$(git describe --abbrev=0 --tags)
    git checkout $DEP_LATEST
    go install -ldflags="-X main.version=$DEP_LATEST" ./cmd/dep
    git checkout master
    

    Cài đặt ngay trên môi trường phát triển

    Nếu bạn muốn hack go dep, hãy thử cài đặt nó với go get

    go get -u github.com/golang/dep/cmd/dep
    

    Lưu ý rằng dep yêu cầu Go workspaceGOPATH hoạt động. Hãy đảm bảo bạn cấu hình tất cả những yêu cầu cần thiết trên trước khi cài đặt Go Dep

    Tạo một project mới

    Sau khi bạn đã cài đặt Go Dep, bạn cần chọn một thư mục root cho project của bạn. Bạn cần phải lựa chọn thư mục root phù hợp với yêu cầu phát triển của bạn. Có 4 trường hợp cơ bản sau:

    • Một dự án có thể được chia sẻ hay import bởi những dự án hay lập trình viên khác. Trong trường hợp này hãy lựa chọn đường dẫn import tương ứng với VCS root với vị trí network của nó, ví dụ:
    $GOPATH/src/github.com/golang/dep.
    
    • Một dự án hoàn toàn cục bộ, bạn không có ý định đẩy nó lên server trung tâm (như Github chẳng hạn). Trong trường hợp này, mọi thư mục con bên dưới $GOPATH/src đều hợp lý.

    • Một dự án cần một repository lớn sẽ phức tạp đôi chút. Go Dep hiện vẫn chưa hỗ trợ, có lẽ là trong tương lai

    • Hãy coi toàn bộ GOPATH là một dự án duy nhất, trong đó $GOPATH/src là root. Hiện tại Dep không hỗ trợ điều này - nó cần một đường dẫn nhập không rỗng để là gốc của namespace cho dự án của bạn.

    Chúng ta giả định rằng trường hợp đầu tiên là phổ biến nhất. Hãy tạo và di chuyển dự án vào đường dẫn như sau:

    $ mkdir -p $GOPATH/src/github.com/me/example
    $ cd $GOPATH/src/github.com/me/example
    

    Okay, chúng ta bắt đầu khởi tạo dự án:

    $ dep init
    $ ls
    Gopkg.toml Gopkg.lock vendor/
    

    Trong một dự án mới như này, tất cả những tập tin và thư mục vendor sẽ rỗng.

    Đây là thời điểm thích hợp để chúng ta thiết lập quản lý phiên bản, như git chẳng hạn. Mặc dù dep không có cách nào để kiểm soát, quản lý phiên bản của dự án nhưng nó có thể giúp việc kiểm tra các thay đổi được thực hiện dễ dàng hơn. Về cơ bản, đó là cách tốt nhất để phát triển các phần mềm hiện đại!

    Tới đây, dự án của chúng ta đã được khởi tạo, chúng ta đã sẵn sàng để bắt đầu lập trình. Bạn có thể mở một file .go lên vằ bắt đầu "hack" rồi. Hoặc bạn có thể thêm vào trước những project/package mà bạn đã biết là sẽ dùng đến sử dụng câu lệnh sau:

    $ dep ensure -add github.com/foo/bar github.com/baz/quux
    

    Okay, đến đây là kết thúc hướng dẫn căn bản cài đặt và sử dụng Go Dep rồi.
    Chi tiết về một số các câu lệnh căn bản thường dùng, các bạn có thể tham khảo thêm ở đây: https://golang.github.io/dep/docs/daily-dep.html

    Chúc các bạn sẽ tạo được các project "ngon lành" trong tương lai! 😂



Có thể bạn cũng quan tâm

.
DMCA.com Protection Status