একটি ব্যক্তিগত গিথুব রেপো ক্লোনিং


226

আমি যে প্রকল্পে কাজ করছি তার জন্য আমার কাছে গিথুবে একটি ব্যক্তিগত সংগ্রহস্থল রয়েছে। এখনও অবধি আমি কেবলমাত্র আমার হোম ডেস্কটপে কাজ করেছি, তবে আমি কেবল একটি ল্যাপটপ কিনেছি এবং এটি সেট আপ করার চেষ্টা করছি যাতে আমি কম্পিউটার থেকে প্রকল্পে কাজ করতে পারি, এবং পরিবর্তনগুলি ধাক্কা / টানতে পারি।

আমি আমার গিথুব অ্যাকাউন্টে ল্যাপটপের জন্য একটি নতুন এসএসএইচ কী যুক্ত করেছি এবং আমি সেট আপ করেছি এমন একটি পাবলিক টেস্টের রেপো ক্লোনিং এবং পরিবর্তন করতে সফল হয়েছিল। তবে, আমি ব্যক্তিগত রেপো ক্লোন করতে পারিনি। একটি ব্যক্তিগত রেপো ক্লোন করার জন্য কমান্ড লাইনে আমার বিশেষ কিছু করার দরকার আছে? আমার কি আমার ল্যাপটপের জন্য একটি নতুন গিটহাব অ্যাকাউন্ট স্থাপন এবং নিজেকে একজন সহযোগী হিসাবে সেট আপ করার দরকার আছে?

আমি যে কমান্ডটি ব্যবহার করেছি তা ছিল git clone git://github.com/myusername/reponame.git


3
স্থানীয়ভাবে ব্যক্তিগত রেপো ক্লোন করার চেষ্টা করার জন্য আপনি কোন আদেশ ব্যবহার করেছেন? আপনি কি ত্রুটি পেয়েছি?
রন ডেভেরা

উত্তর:


171

ব্যক্তিগত ক্লোন ইউআরএলগুলি ফর্মটি নিয়ে যায় git@github.com:username/repo.git- সম্ভবত এর git@পরিবর্তে আপনার কী প্রয়োজন git://?

git:// ইউআরএলগুলি কেবল পঠিত হয় এবং দেখে মনে হয় ব্যক্তিগত রেপোগুলি এই ফর্মটিকে অ্যাক্সেসের অনুমতি দেয় না।


হ্যাঁ - "git@github.com:" ব্যবহার করা "https: //" এর পরিবর্তে আমার সমস্যার সমাধান করেছে! আসলে আমি একই সাথে 2 এফএ সক্ষম করেছি তবে এর সাথে কিছুই করার ছিল না।
লিও

148

এটি আমার পক্ষে কাজ করেছে:

git clone https://username@github.com/username/repo_name

এটি অবশ্যই গিথুবে আমার এসএসএইচ কীটি যুক্ত করার পরে হয়েছিল । আমি এটি সেন্টোস সার্ভারে ব্যবহার করেছি, যদি এটি প্রয়োজন হয়।


4
এর জন্য ধন্যবাদ. তবে কেন এটি কাজ করে তা সম্পর্কে আমি অসচেতন। কখনও পাসওয়ার্ডের জন্য অনুরোধ করা হয়নি। Https এর মাধ্যমে গিট ক্লোনটি কোনওভাবেই আমার এসএস কীগুলিতে স্পর্শ করা উচিত? আমি ভেবেছি না।
পুনর্বার্ট

1
খুব ভাল, এটি আমাকে উবুন্টুতে একটি ব্যক্তিগত রেপো ডাউনলোড করতে সক্ষম করেছে।
নিনো এককাপ্যাক

এটি কাজ করে তবে git@github.com: ব্যবহারকারীর নাম / repo.git না?
ডিম্মদীপ

@ ডিআইমদীপ গিট এবং অন্যান্য সরঞ্জামগুলি প্রায়শই দূরবর্তী সংগ্রহস্থলগুলিতে ফাইল অ্যাক্সেসের জন্য গিট: প্রোটোকল ব্যবহার করুন। কিছু ফায়ারওয়াল কনফিগারেশনগুলি গিট: // ইউআরএলগুলি ব্লক করছে, যা সংগ্রহস্থলগুলি ক্লোন করতে বা নির্ভরতা ডাউনলোড করার সময় ত্রুটির দিকে পরিচালিত করে। (উদাহরণস্বরূপ কর্পোরেট ফায়ারওয়ালগুলি গিট ব্লক করার জন্য "কুখ্যাত": আপনি যদি এই ইস্যুটি চালনা করেন তবে আপনি https: এর পরিবর্তে নিম্নলিখিত কমান্ডটি চালিয়ে বাধ্য করতে পারেন: git কনফিগারেশন - গ্লোবাল url। "https: // "
.insteadOf

1
কিছু ক্ষেত্রে, যদি আপনাকে পাসওয়ার্ডের জন্য অনুরোধ করা হয় এবং তারপরে অ্যাক্সেস অস্বীকার করা হয় তবে এটি আপনার গিটহাব লগইন পাসওয়ার্ডের পরিবর্তে "ব্যক্তিগত অ্যাক্সেস টোকেন" সরবরাহ করার প্রয়োজন হতে পারে। [1] help.github.com/articles/Wich-remote-url-should-i-use [2] help.github.com/articles/…
ডেভিড

71

এটি আমার পক্ষে কাজ করেছে:

git clone https://username:password@github.com/username/repo_name.git

5
এটি বিশেষ চরিত্রের পাসওয়ার্ড নিয়ে সমস্যাযুক্ত, লগগুলিতে আপনার পাসওয়ার্ড ফেলে দেয় এবং আর কাজ করে বলে মনে হয় না
pcnate

5
এটি ব্যবহার করে দেখুন - আপনাকে আপনার অ্যাকাউন্টের পাসওয়ার্ড প্রবেশ করতে অনুরোধ জানানো হবে। ইতিহাস বা লগগুলিতে পাসওয়ার্ড শেখার কোনও উদ্বেগ নেই। git clone https://username@github.com/username/repo_name.git
বিনয়

64

আমি এই সমস্যাটি বেশ কয়েকবার পূরণ করেছি এবং প্রতিবারই আমি এই পৃষ্ঠায় নামলাম, প্রতিটি জিনিস চেষ্টা করে ব্যর্থ হয়েছি!

কারণ আমি 2 এফএ সক্ষম করেছি !!!

Https://help.github.com/articles/Wich-remote-url-should-i-use/#when-2fa-is-enable এর মতে

আপনি যদি দ্বি-ফ্যাক্টর প্রমাণীকরণ সক্ষম করেছেন  , বা আপনি যদি SAML একক সাইন-ইন ব্যবহার করে এমন কোনও সংস্থা অ্যাক্সেস করছেন তবে আপনাকে   এইচটিটিপিএস গিটের জন্য আপনার পাসওয়ার্ড প্রবেশের পরিবর্তে একটি ব্যক্তিগত অ্যাক্সেস টোকেন সরবরাহ করতে হবে  ।

  1. এই লিঙ্কটি অনুসরণ করুন এবং একটি অ্যাক্সেস টোকেন তৈরি করুন
  2. git clone https://github.com/username/repo_name.git (ডিফল্ট গিট রেপো লিঙ্কটি যথেষ্ট ভাল!)
  3. আপনার ব্যবহারকারীর নাম লিখুন এবং পাসওয়ার্ড হিসাবে অ্যাক্সেস টোকেন ব্যবহার করুন!

হালনাগাদ:

  • যদি আপনি কমান্ড লাইনে আপনার অ্যাক্সেস টোকেনটি উন্মোচিত করতে আপত্তি করেন না তবে আপনি অ্যাক্সেস টোকেনটি ব্যবহারকারীর নাম হিসাবে পেস্ট করতে পারেন তবে এন্টার এন্টার চাপুন (পাসওয়ার্ডের প্রয়োজন নেই)।
  • ঘৃণা অনুলিপি এবং বার বার অ্যাক্সেস টোকেন আটকানো?
    ব্যবহার করুন git config credential.helper store(আপনার বিশ্বাস না এমন মেশিনে এটি করবেন না)

আপনি যদি উইন্ডোতে থাকেন তবে আপনি github.com/microsoft/Git-Credential-Manager- for- উইন্ডোজ ইনস্টল করতে পারেন তারপরে একটি ব্যক্তিগত সংগ্রহস্থল ক্লোনিং করার সময়, গিথুব লগইন সহ ইউআই উইন্ডো উপস্থিত হয়। এটি আপনাকে 2 এফএ কোড পূরণ করতে দেয়। আপনার গিথুব শংসাপত্রগুলি নিরাপদে সংরক্ষণ করা হবে।
জিরিক

18

উইন্ডোজের জন্য গিট ব্যবহার করা এইচটিটিপিএস ইউআরএল ব্যবহার করা আরও সহজ।

একটি গিট শেল খুলুন git clone https://github.com/user/repo। যখন জিজ্ঞাসা করা হবে তখন ব্যবহারকারীর নাম এবং পাসওয়ার্ড লিখুন। এসএসএইচ কী সেটআপ করার দরকার নেই।


1
আমি ssh সেটআপ না করার সরলতার সাথে একমত
ফলিক্স গাগনন-গ্রেনিয়ার

অন্যান্য মন্তব্যের সাথে একমত হোন, কেবল এইচটিটিপিএস ইউআরএল ব্যবহার করে উইন্ডোজ বা উবুন্টুতে সঠিকভাবে কাজ করে (
১১6.০৪-এ

18

আমার জন্য সমাধানটি ছিল:

git clone https://myusername@restoftherepolink.git

এখানে আপনার রেপোর মালিক হওয়া দরকার তবে আপনি যদি তা না হন তবে এটি চলে যাবে

git clone https://myusername@github.com/ownersusername/repo_name.git

যদি আপনার2FA enabled তখন থাকে:

  1. উপরের ডানদিকে প্রোফাইল আইকন থেকে সেটিংসে যান বা https://github.com/settings/profile দেখুন
  2. নীচের ট্যাবে যান বা https://github.com/settings/tokens এ যান
  3. ব্যক্তিগত টোকেন এখানে সর্বশেষ ট্যাব খুলুন। এবং একটি টোকেন উত্পন্ন
  4. টোকেনটি অনুলিপি করুন এবং চালান git clone https://myusername@restoftherepolink.git

পাসওয়ার্ডের জন্য অনুরোধ জানানো হলে সেই টোকেনটি এখানে রাখুন। টোকেন প্রজন্মের চিত্র এখানে


1
U

8

আমার একটি সংস্থা (বেসরকারী) অ্যাকাউন্ট এবং 2-ফ্যাক্টর-প্রমাণীকরণ সক্ষম হয়েছে, সুতরাং এটি নীচের মত কাজ করতে আমাকে কয়েকটি পোস্ট একত্রিত করতে হয়েছিল। (নীচে নামা যাতে এটি একই পরিস্থিতিতে কারও পক্ষে কার্যকর হতে পারে)

Initially it was the Fatal Error. 
fatal: repository 'https:
...
remote: Repository not found.
fatal: repository 'https:

শংসাপত্র ব্যবস্থাপক ইনস্টল করেছেন এবং জিআইটি আপডেট করেছেন যেমনটি এখানে উল্লেখ করা হয়েছে: https://codeshare.co.uk/blog/how-to-solve-the-github-error-fatal-httprequestexception-encountered/

আমি ক্লোন কমান্ডটি নিম্নলিখিতভাবে ব্যবহার করার চেষ্টা করার সময় সমস্যাটি নীচে সরানো হওয়ায় সমস্যাটি সমাধান হয়নি:

$ git clone https://<username>:<password>@github.com/<ORG_NAME>/<PROJECT-NAME>.git

remote: Invalid username or password.
fatal: Authentication failed for 'https://

আমার পাসওয়ার্ডটিতে এটিতে $ চিহ্ন ছিল এবং কোনও কারণে জিআইটি কমান্ড লাইন / জিআইটি বাশ এটি পছন্দ করে নি। আমি এটি দেখতে পাচ্ছি ত্রুটিযুক্ত ফেরত পাঠ্যে এর মধ্যে $ চিহ্ন নেই।

fatal: Authentication failed for 'https://<username>:<password-missing-$-symbol>@github.com/<ORG_NAME>/<PROJECT-NAME>.git'

আমাকে এই সাইটটি উল্লেখ করতে হয়েছিল: https://git-scm.com/book/en/v2/Git-Tools- বিশ্বাসযোগ্য- সঞ্চয়

দয়া করে নোট করুন: আপনার অ্যাকাউন্টের জন্য যদি উইন্ডোজ শংসাপত্র ব্যবস্থায় কোনও ভুল পাসওয়ার্ড সংরক্ষণ করা হয় তবে এটি সমস্যারও যোগ করবে। আমি নীচের পদক্ষেপে যাওয়ার আগে এইভাবে সঞ্চিত গিথুব শংসাপত্রটি সরিয়ে ফেলেছি।

$ git config --global credential.helper cache
$ git clone https://<username>:<password>@github.com/<ORG_NAME>/<PROJECT-NAME>.git

এখন উইন্ডোজ শংসাপত্রের পরিচালক পপ-আপ। আমি পাঠ্য বাক্সগুলিতে আমার ব্যবহারকারীর নাম এবং পাসওয়ার্ড টাইপ করেছি (এটি আমার পাসওয়ার্ডটি গ্রহণ করেছে যা accepted প্রতীক ছিল) এবং আমাকে 2-ফ্যাক্টর প্রমাণীকরণ কোডের জন্য অনুরোধ জানায়। আমি গুগল প্রমাণীকরণকারীর কাছ থেকে প্রমাণীকরণ কোডটি টাইপ করেছি এবং ক্লোনটি পুরোপুরি শুরু হয়েছিল।


ডলার প্রতীক $ইউনিক্সের একটি সংরক্ষিত অক্ষর। এটি $প্রতীক অনুসরণকারী স্ট্রিংয়ের সমান সেই নামের সাথে একটি চলক মান পুনরুদ্ধারের সূচনা চিহ্নিত করে ।
আমাকে এটি সম্পর্কে

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

6

2 এফএ সক্ষম করে ব্যক্তিগত রেপোগুলি থেকে ক্লোনিং করার সময়, একটি সাধারণ পদক্ষেপ রয়েছে যা আপনাকে অনুসরণ করা উচিত

  1. আপনার গিট অ্যাকাউন্টে যান
  2. সেটিংস-> বিকাশকারী সেটিংস-> ব্যক্তিগত অ্যাক্সেস টোকনে যান
  3. জেনারেট টোকেন ক্লিক করুন
  4. আপনি চান শিরোনাম এবং কার্যকারিতা সহ একটি টোকেন তৈরি করুন
  5. আপনি যখন ব্যক্তিগত রেপো ক্লোনিং করছেন, গিট ক্লোন রেপোনাম ব্যবহার করে আপনার ব্যবহারকারীর নাম প্রবেশ করার পরে, পাসওয়ার্ড হিসাবে ব্যক্তিগত অ্যাক্সেস টোকেন দিন।

আপনি ব্যক্তিগত রেপোর জন্য প্রমাণীকরণ ব্যর্থ ত্রুটি বার্তা পেলে একই পদক্ষেপগুলি অনুসরণ করুন


5

ম্যাকের উত্তরের প্রতিক্রিয়া হিসাবে, আপনি URL টি ক্লিক SSHকরে You can clone with HTTPS, SSH, or Subversion.এবং অনুলিপি করে আপনার গিথুব রেপো পৃষ্ঠায় আপনার এসএসএইচ ক্লোন URL পেতে পারেন URL



3

এম কে ইয়ুংয়ের জবাব ছাড়াও: আপনি যেখানে 403 নিষিদ্ধ প্রতিক্রিয়া পেতে না চান তা যদি আপনি রেপোর জন্য ডিপ্লোয় কীগুলিতে নিযুক্ত করছেন সেখানে আপনি সর্বজনীন কী যুক্ত করেছেন তা নিশ্চিত করুন।


3

প্রথমে নিশ্চিত হয়ে নিন যে আপনার কাছে একটি এসএসএইচ কী রয়েছে বা একটি এখানে তৈরি করুন: https://help.github.com/articles/generating-ssh-keys/

আপনার কীটি একবার হয়ে গেলে আপনার গিথব অ্যাকাউন্টে এটি যুক্ত করতে হবে: https://github.com/settings/ssh

উইন্ডোজ ব্যবহারকারীদের জন্য প্রশাসক হিসাবে গিট ব্যাশ চালানো কার্যকর।

এখন ক্লোনিংটি আপনার ব্যবহারকারীর নাম এবং পাসওয়ার্ড না রেখে ব্যক্তিগত সংগ্রহস্থলের (রেপো) কাজ করা উচিত।


3

একটি ব্যক্তিগত রেপো ক্লোনিংয়ের জন্য আমার একটি ইন্টারঅ্যাক্টিভ পদ্ধতি প্রয়োজন।

এই ইস্যুতে অনুপ্রাণিত: https://github.com/github/hub/issues/1644

ধাপ 1.

গিথব বিকাশকারী সেটিংসে একটি ব্যক্তিগত অ্যাক্সেস টোকেন তৈরি করুন: https://github.com/settings/tokens

ধাপ ২.

git clone https://$token:x-oauth-basic@github.com/$username/$repo.git

1

নতুন ব্যবহৃত কম্পিউটারে যদি এই কমান্ডটি চালাচ্ছে বিভিন্ন শংসাপত্র

গিট ক্লোন https://github.com/username/reponame.git

সরাসরি কাজ করবে না। গিট সঞ্চিত শংসাপত্রগুলি ব্যবহার করার চেষ্টা করবে এবং আপনাকে ব্যবহারকারীর নাম এবং পাসওয়ার্ডের জন্য অনুরোধ করবে না। শংসাপত্রগুলি মেলে না বলে গিটটি আউটপুট দেয় Repository not foundএবং ক্লোন ক্রিয়াকলাপ ব্যর্থ হয়। আমি যেভাবে এটি সমাধান করেছি তা ছিল পুরানো শংসাপত্রগুলি মুছে ফেলা, যেহেতু আমি সেগুলি আর ব্যবহার করি না এবং উপরে উল্লিখিত কমান্ডটি আবার চালনা করে প্রয়োজনীয় ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রবেশ করিয়ে প্রাইভেট রেপোটিকে ক্লোন করেছি।


1

1) নীচের বিন্যাসে ব্যবহারকারীর নাম এবং পাসওয়ার্ড সহ কমান্ড চালানোর চেষ্টা করুন

git clone https://your_username:your_password@github.com/username/reponame.git

অন্যরা এখানে যেমন উল্লেখ করেছে এখন সমস্যাটি হ'ল যখন আমাদের পাসওয়ার্ডে বিশেষ অক্ষর রয়েছে। জাভাস্ক্রিপ্টে ইউটিএফ -8 এনকোডিংয়ে বিশেষ অক্ষরের সাথে পাসওয়ার্ড রূপান্তর করতে কোডের নীচে ব্যবহার করুন।

console.log(encodeURIComponent('password@$123'));

এখন বিশেষ অক্ষর এবং রান কমান্ডের পরিবর্তে এই উত্পন্ন পাসওয়ার্ডটি ব্যবহার করুন।

এই সমস্যার সমাধান আশা করি।



0

আপনি যদি নিশ্চিত হন যে আপনার কাছে 2 এফএ সক্ষম করা নেই, আপনার রেপো অ্যাক্সেস করার অনুমতি রয়েছে এবং রেপো বিদ্যমান রয়েছে, আপনার git@github.com অন্য অ্যাকাউন্টে লগ ইন করা সম্ভব।

আপনি কি করতে পারেন তা পরীক্ষা করতে

ssh -T git@github.com

যদি এই সমস্যাটি সমাধান করতে এটি অন্য কোনও অ্যাকাউন্ট দেখায়:

 ssh-add -D
 ssh-add ~/.ssh/your_rsa
 ssh -T git@github.com
 git clone git@github.com:<owner_name>/<repo_name>.git

এটা তোলে প্রদর্শন করা হয়: unknown option -T। আমার গিট সংস্করণটি হল2.7.4
bvdb

@ বিভিডিবি আমার দুঃখিত, এটি হওয়া উচিত ছিলssh -T git@github.com
কক্সিন লু

0

আপনি যদি এটি অর্জন করতে চান তবে Dockerfileনীচের লাইনগুলি সহায়তা করে।

ARG git_personal_token
RUN git config --global url."https://${git_personal_token}:@github.com/".insteadOf "https://github.com/"
RUN git clone https://github.com/your/project.git /project

তারপরে আমরা নীচের যুক্তি দিয়ে তৈরি করতে পারি।

docker build --build-arg git_personal_token={your_token} .

0
git clone https://myusername:mygithubpassword@github.com/myusername/project.git

আপনি যখন রেপো থেকে ব্যক্তিগত রেপো ব্যবহার করার চেষ্টা করছেন তখন আপনাকে তার জন্য ব্যবহারকারীর নাম এবং পাসওয়ার্ডটি পাস করতে হবে।


এটি নিরাপদ নয়। ক্লোন করা রেপো .git / কনফিগারেশন ফাইলে প্রদত্ত http লিঙ্কটি সঞ্চয় করে। স্থানীয় রেপোতে করা সমস্ত কমিটকে ব্যবহারকারীর নাম এবং পাসওয়ার্ডের প্রয়োজন ছাড়াই দূরবর্তী স্থানে ঠেলা যায়। আপনি একমাত্র ব্যবহারকারী না হলে কোনটি সত্যই বিপজ্জনক !!
টিয়ান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.