আমি কীভাবে প্যাকেজ ইনস্টল করতে পারি?


132

আমি গিথুব থেকে আমার গোপথে প্যাকেজ ইনস্টল করতে চাই, আমি এটি চেষ্টা করেছি:

go get github.com:capotej/groupcache-db-experiment.git

সংগ্রহস্থল এখানে আছে


4
যদি এই .gitgo get github.com:capotej/groupcache-db-experiment
আদেশটিতে

উত্তর:


120

কমান্ড যাও

প্যাকেজ এবং নির্ভরতা ডাউনলোড এবং ইনস্টল করুন

ব্যবহার:

go get [-d] [-f] [-t] [-u] [-v] [-fix] [-insecure] [build flags] [packages]

আমদানি পথের নাম অনুসারে প্যাকেজগুলি তাদের নির্ভরতা সহ ডাউনলোডগুলি পান। এরপরে এটি নামক প্যাকেজগুলি ইনস্টল করে, যেমন 'গো ইনস্টল'।

প্যাকেজগুলি ডাউনলোড করার পরে -d পতাকা নির্দেশগুলি বন্ধ হয়ে যায়; এটি প্যাকেজগুলি ইনস্টল না করার নির্দেশ দেয়।

-ফ পতাকাটি কেবলমাত্র -সু সেট থাকলেই বৈধ হয়ে যায় - প্রতিটি প্যাকেজটি তার আমদানির পথ দ্বারা সূচিত উত্স নিয়ন্ত্রণ সংগ্রহস্থল থেকে পরীক্ষা করা হয়েছে কিনা তা যাচাই করতে বাধ্য করে forces উত্সটি যদি মূলটির স্থানীয় কাঁটাচামড়া হয় তবে এটি কার্যকর হতে পারে।

-ফিক্স ফ্ল্যাগ নির্দেশাবলী নির্ভরতাগুলি সমাধানের আগে বা কোড তৈরির আগে ডাউনলোড প্যাকেজগুলিতে ফিক্স টুলটি চালানোর নির্দেশ দেয়।

-সিকিউর ফ্ল্যাগটি এইচটিটিপি-র মতো সুরক্ষিত স্কিম ব্যবহার করে সংগ্রহস্থল থেকে সংগ্রহ এবং কাস্টম ডোমেনগুলি সমাধান করার অনুমতি দেয়। সতর্কতার সাথে ব্যবহার করুন.

-T পতাকা নির্দেশাবলী নির্দিষ্ট প্যাকেজগুলির জন্য পরীক্ষাগুলি তৈরি করতে প্রয়োজনীয় প্যাকেজগুলি ডাউনলোড করতেও নির্দেশ দেয়।

-উ ফ্ল্যাগ নির্দেশিত প্যাকেজগুলি এবং তাদের নির্ভরতা আপডেট করার জন্য নেটওয়ার্কটি ব্যবহার করতে নির্দেশ দেয়। ডিফল্টরূপে, হারিয়ে যাওয়া প্যাকেজগুলি পরীক্ষা করতে নেটওয়ার্ক ব্যবহার করুন তবে বিদ্যমান প্যাকেজগুলির আপডেটগুলি অনুসন্ধান করার জন্য এটি ব্যবহার করবেন না।

-V পতাকাটি ভার্বোস অগ্রগতি এবং ডিবাগ আউটপুট সক্ষম করে।

ইনস্টলেশনটি নিয়ন্ত্রণের জন্য বিল্ড ফ্ল্যাগগুলিও গ্রহণ করুন পান। 'যেতে সহায়তা করুন' দেখুন।

একটি নতুন প্যাকেজ চেক করার সময়, লক্ষ্য ডিরেক্টরি GOPATH / src / তৈরি করে। যদি GOPATH এ একাধিক এন্ট্রি থাকে তবে প্রথমটি ব্যবহার করুন। আরও তথ্যের জন্য দেখুন: 'গোপথ সহায়তা করুন'।

কোনও প্যাকেজ চেক আউট বা আপডেট করার সময়, কোনও শাখা বা ট্যাগ সন্ধান করুন যা গো স্থানীয়ভাবে ইনস্টল হওয়া সংস্করণটির সাথে মেলে। সর্বাধিক গুরুত্বপূর্ণ নিয়ম হ'ল যদি স্থানীয় ইনস্টলেশনটি "go1" সংস্করণ চলমান থাকে তবে "go1" নামে একটি শাখা বা ট্যাগ অনুসন্ধান করুন। যদি এরকম কোনও সংস্করণ না থাকে তবে এটি প্যাকেজের ডিফল্ট শাখাটি পুনরুদ্ধার করে।

যখন গিট সংগ্রহস্থলটি চেক আউট করতে বা আপডেট করতে যায়, এটি সংগ্রহস্থলের দ্বারা রেফারেন্সিত কোনও গিট সাবমোডিয়ুল আপডেট করে।

বিক্রেতাদের ডিরেক্টরিতে কখনই পরীক্ষা করা বা আপডেট হওয়া কোড পান না।

প্যাকেজ নির্দিষ্ট করার বিষয়ে আরও তথ্যের জন্য, 'Go সহায়তা প্যাকেজগুলি' দেখুন।

'Go get' কীভাবে ডাউনলোডের জন্য উত্স কোড খুঁজে পান সে সম্পর্কে আরও তথ্যের জন্য, 'go help Importpath' দেখুন।

এই পাঠ্যটি উত্স কোড এবং নির্ভরতাগুলি পরিচালনা করতে GOPATH ব্যবহার করার সময় প্রাপ্তির আচরণের বর্ণনা করে। পরিবর্তে গো কমান্ডটি মডিউল-সচেতন মোডে চলমান থাকলে গেটের পতাকা এবং প্রভাবগুলির বিশদ পরিবর্তন হয়, যেমন 'যেতে সহায়তা করুন' না does 'যান সহায়তা মডিউলগুলি' এবং 'সহায়তা মডিউল-পেতে' যান দেখুন।

আরও দেখুন: বিল্ড যান, ইনস্টল করুন, পরিষ্কার হয়ে যান।


উদাহরণস্বরূপ, ভার্বোজ আউটপুট দেখাচ্ছে,

$ go get -v github.com/capotej/groupcache-db-experiment/...
github.com/capotej/groupcache-db-experiment (download)
github.com/golang/groupcache (download)
github.com/golang/protobuf (download)
github.com/capotej/groupcache-db-experiment/api
github.com/capotej/groupcache-db-experiment/client
github.com/capotej/groupcache-db-experiment/slowdb
github.com/golang/groupcache/consistenthash
github.com/golang/protobuf/proto
github.com/golang/groupcache/lru
github.com/capotej/groupcache-db-experiment/dbserver
github.com/capotej/groupcache-db-experiment/cli
github.com/golang/groupcache/singleflight
github.com/golang/groupcache/groupcachepb
github.com/golang/groupcache
github.com/capotej/groupcache-db-experiment/frontend
$ 

17
এটি যদি কাউকে সহায়তা করে তবে আমার সমস্যার সমাধান ( package github.com/coreos/go-iptables.git: invalid version control suffix in github.com/ path) এর সমাধানটি ছিল .gitগিথুব ইউআরএল থেকে প্রত্যয়টি সরিয়ে ফেলা ।
এক্সালিজুর


3
@ ইয়ুয়াংজিয়ান এর অর্থ ভার্বোস আউটপুট।
ওমরসিন

3
প্রেম কিভাবে -vকমান্ড সেই তালিকাটি উল্লেখ করা হয় না তোমার fml ... নিশ্চয় এটা মানে বাগাড়ম্বরপূর্ণ হউক না কেন
আলেকজান্ডার মিলস

2
একবার ব্যবহার করার পরে আপনি কীভাবে এটি চালাবেন go get?
আকজয় 6:58

75

প্রথমত, আমাদের গোপথ দরকার

এটি $GOPATHহ'ল একটি ফোল্ডার (বা ফোল্ডারগুলির সেট) এর পরিবেশ পরিবর্তনশীল দ্বারা নির্দিষ্ট। আমাদের অবশ্যই লক্ষ্য করতে হবে যে এটি সেই $GOROOTডিরেক্টরি নয় যেখানে গো ইনস্টল করা আছে।

export GOPATH=$HOME/gocode
export PATH=$PATH:$GOPATH/bin

আমরা ~/gocodeআমাদের অ্যাপ্লিকেশন এবং এর নির্ভরতার উত্স সংরক্ষণ করতে আমাদের কম্পিউটারে পথ ব্যবহার করেছি । GOPATHডিরেক্টরি তাদের প্যাকেজ বাইনেরিতে সংরক্ষণ করবে।

তারপরে Go env পরীক্ষা করুন

আপনার সিস্টেমে অবশ্যই থাকতে হবে $GOPATHএবং $GOROOTনীচে আমার এনভ:

GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/elpsstu/gocode"
GORACE=""
GOROOT="/home/pravin/go"
GOTOOLDIR="/home/pravin/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"

এখন, আপনি ডাউনলোড গো প্যাকেজটি চালান:

go get [-d] [-f] [-fix] [-t] [-u] [build flags] [packages]

ডাউনলোডগুলি পান এবং তাদের নির্ভরতা সহ আমদানির পাথগুলির দ্বারা নামযুক্ত প্যাকেজগুলি ইনস্টল করে। আরও বিশদ জন্য আপনি এখানে দেখতে পারেন ।


1
আমার যাওয়ার পরিবেশটি ইতিমধ্যে ঠিক আছে, তবে আমি নিয়মের সাথে পরিচিত নই go get, তাই github.com:capotej/groupcache-db-experiment.gitঅবৈধ নয়, আইনী পথটি কী?
রজার

2
@ বিপিএসএস-এর হিসাবে -v github.com/capotej/groupcache-db-experiment / ... এ যাওয়ার চেষ্টা করুন
প্রবীণ মিশ্র

1
Go v1.8 দিয়ে শুরু করে, সেট না GOPATHকরা $HOME/goহলে ডিফল্ট । সূত্র 1 , 2
মনওয়ালান গাজাপাতি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.