আমি কীভাবে নিশ্চিত করব যে গিট আমাকে আমার গিটহাব ব্যবহারকারীর নাম এবং পাসওয়ার্ড জিজ্ঞাসা করবে না?


171

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

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

আমি বুঝতে পারছি না কেন এটি হচ্ছে।


আপনাকে পাসওয়ার্ডটি ক্যাশে করতে হবে: help.github.com/articles/set-up-git#password-caching
পাইটর ইউজউইচজ

উত্তর:


33

আপনাকে একটি ssh- এজেন্ট সেট আপ করতে হবে যার বিরুদ্ধে আপনাকে কেবল একবার প্রমাণীকরণ করতে হবে। এই উত্তরটি কীভাবে দেখুন তার জন্য এসও তে দেখুন ।


1
তবে এই সমাধানটি ssh-पारिवारিক বাক্যাংশের জন্য। সমস্যাটি হ'ল গিটটি "গিট পুশ" ব্যবহার করে যা এসএস-এজেন্টকে ট্রিগার করে না, আমি ধরে নিই। (আমি ইতিমধ্যে এটি করেছি, তাই আমি জানি এটি কাজ করে না))
পিকার্ডো

2
@ পাইকার্ডো: আমি এটি করেছি এবং এটি সত্যিই কাজ করে।
দেনিথ

213

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

কারণ আমি এই প্রকল্পটি ক্লোন করতে https প্রোটোকল ব্যবহার করেছি! আপনি কী প্রোটোকল ব্যবহার করছেন তা পরীক্ষা করতে just

git config -l

এবং 'দূরবর্তী.রিগিন.আরল' দিয়ে শুরু হওয়া রেখাটি দেখুন।

প্রোটোকলগুলি স্যুইচ করতে:

git config remote.origin.url git@github.com:the_repository_username/your_project.git

the_repository_usernameএবং your_projectউপযুক্ত সংগ্রহস্থলের নাম এবং সেই সংগ্রহস্থলের মালিকের সাথে প্রতিস্থাপন করা উচিত। আপনার যদি সংগ্রহস্থলির মালিকানা থাকে বা অন্যথায় সংগ্রহশালার মালিকের ব্যবহারকারীর নাম আপনার হয়।


5
এটা আমার জন্য কাজ করে। একটি বিষয় হ'ল ইউআরএলটিতে আমার ব্যবহারকারীর নামটি নেই তবে গিথুব-তে প্রদর্শিত রেপো ঠিকানাটি রয়েছে:git@github.com:some-user/repo-name.git
বি সেভেন

1
দ্রষ্টব্য: গুগল আমাকে এখানে এনেছে। আমি remote.origin.urlhttps পদ্ধতিতে সেট করেছিলাম এমনকি httpsবনাম sshপদ্ধতিগুলিও লক্ষ্য করিনি । এই ইউআরএলটি আমাকে সুস্পষ্ট দেখতে সাহায্য করেছে: help.github.com/articles/…
ক্রিস কে

পাসওয়ার্ড প্রবেশের খুব পাস করার কোনও উপায় আছে কি?
zishe

গিট জ্ঞান যাদের জন্য প্রশ্ন: git config remote.origin.url ...উপরে ব্যবহৃত বনাম, মধ্যে কোন পার্থক্য (বা পছন্দ) git remote set-url origin ...?
ড্যারেন

আমি বুঝতে পারি না যে কীভাবে এর মতো কোনও ভুল উত্স সরিয়ে ফেলতে হয়। উত্তরটি হ'ল:git remote rm origin
ভ্যাকিল্যান্ডো

30

আপনি যদি এসএসএইচের পরিবর্তে এইচটিটিপিএস ব্যবহার করে থাকেন তবে আপনি এটি অনুসরণ করতে পারেন:

  1. এর সাথে আপনার দূরবর্তী ইউআরএল (রিমোট.অরগিন.আরল) খুঁজুন

    git config -l
    

    সেরজিও মুরস্টাবিলিকে ধন্যবাদ

  2. আপনার রিমোট URL টি এর মতো হবে: https: // NAME USERNAME} @ github.com / {USERNAME} / P REPOName} .git

  3. এই আদেশটি কার্যকর করুন:

    git config remote.origin.url https://{USERNAME}:{PASSWORD}@github.com/{USERNAME}/{REPONAME}.git
    

2
আমার ব্যবহারকারীর নাম নিজেই আমার @জন্য কাজ করে না।
কোডিং_আইডিওট

তবে যদি এটি না হয় (আপনার ইমেল ব্যবহারের দরকার নেই) এটি পুরোপুরি কাজ করে! ধন্যবাদ।
কিল্লাহ

4
যদি আপনার ব্যবহারকারীর নামটিতে একটি @ অন্তর্ভুক্ত থাকে তবে আপনার এটি URL- এনকোড করা দরকার। meyerweb.com/eric/tools/dencoder
টিম বোডিট

1
সুরক্ষার কারণে আপনার পাসওয়ার্ড বাদ দেওয়া উচিত।
zygimantus

3
সাবধান, পাসওয়ার্ড .git/configফাইলের ভিতরে প্লেইন পাঠ্য সংরক্ষণ করা হবে!
আম্রো

26

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

এইচটিটিপিএস ব্যবহার করে, আপনি নিম্নলিখিতটি দিয়ে গিথব রিমোটগুলির জন্য আপনার ব্যবহারকারীর নাম জিজ্ঞাসা করতে গিটকে আটকাতে পারবেন:

git config --global url."https://yourusername@github.com".insteadOf "https://github.com"

এবং আপনি কমপক্ষে ফ্রিকোয়েন্সি গিট আপনার পাসওয়ার্ডের জন্য জিজ্ঞাসা কমাতে পারেন:

git config --global credential.helper 'cache --timeout=28800'

যেখানে 28800 8 ঘন্টা। আমি আমার সেটআপটি আমার পাসওয়ার্ডটি একবার প্রবেশ করার জন্য ব্যবহার করি, যখন আমি আমার কার্য দিবস শুরু করি।

এর পরে আপনার ভিতরে এই প্রবেশাগুলি থাকবে ~/.gitconfig

[url "https://yourusername@github.com"]
    insteadOf = https://github.com

[credential]
    helper = cache --timeout=28800

উৎস:

http://git-scm.com/docs/git-credential-cache

http://git-scm.com/docs/git-config


6

আপনি যখন গিথুবের জন্য একটি ssh কী সেট আপ করেন, এটি যদি আপনার ডিফল্ট কী না হয় তবে আপনার নিজের একটি বিভাগ যুক্ত করতে হবে ~/.ssh/config

Host *github.com
    User git
    IdentityFile ~/.ssh/github_id_rsa

6

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

Windows Credential Store for Git
This application is a small helper app designed to follow the 
git credentials API as defined by the Git Documentation.

Installation
1. Download the git-credential-winstore.exe application
2. Run it! If you have GIT in your PATH, it should just work.

তারপরে আপনি যখন নিজের নাম এবং পাসওয়ার্ড প্রবেশ করবেন তখন এটি আপনার জন্য মনে রাখবে।


1
ধন্যবাদ. প্রকল্পের নাম দেওয়া হয় গীত-ক্রেডেনশিয়াল-ম্যানেজার-জন্য-উইন্ডোজ
মাইকেল এস

5

এছাড়াও, আপনি যদি প্রতিবার আপনার পাসওয়ার্ডের জন্য অনুরোধ জানাতে চান তবে কেবল আপনার ব্যবহারকারী নাম নয়, তবে আপনি একটি ব্যবহারকারীর নাম দিয়ে রিমোটটি এইচটিটিপিএস হিসাবে কনফিগার করেন .. এটি পছন্দ করুন ..

git config remote.origin.url https://USERNAME@github.com/repo_owner/repo_name

এর পরে, আপনাকে প্রতিবার আপনার পাসওয়ার্ডের জন্য অনুরোধ করা হবে তবে আপনার ব্যবহারকারীর নাম নয়।

বিশ্বের সাথে ভাগ করে নেওয়ার আগে আমার গিথব পাসওয়ার্ডটি টাইপ করতে বাধ্য হওয়ায় আমি এটি পছন্দ করি।


2

আপনি যেমনটি আমি 2-ফ্যাক্টর প্রমাণকে ব্যবহার করি তবে বিষয়গুলি একটু আলাদা। যেহেতু আমি অন্য কোথাও একটি ভাল উত্তর খুঁজে পাইনি, আমি এখানে একটি আটকে দেব যাতে সম্ভবত এটি পরে খুঁজে পেতে পারি।

আপনি যদি 2-গুণক প্রমাণ ব্যবহার করেন, তবে ব্যবহারকারীর নাম / পাসওয়ার্ড উল্লেখ করে ইভেন্ট চলবে না - আপনি অ্যাক্সেসকে অস্বীকার করবেন। তবে আপনি কোনও অ্যাপ্লিকেশন অ্যাক্সেস টোকেন ব্যবহার করতে পারেন এবং এটি আপনার জন্য ক্যাশে গিটের শংসাপত্র সহায়ক ব্যবহার করতে পারেন। এখানে প্রাসঙ্গিক লিঙ্কগুলি রয়েছে:

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


2

এসএসএইচ ব্যবহার করুন

গিটহাবকে পুশ করার সময় পাসওয়ার্ড জিজ্ঞাসা করা থেকে বিরত রাখতে আদর্শভাবে আপনার HTTPS URL ( ) এর পরিবর্তে SSH ( git@github.com:...) ব্যবহার করা উচিত https://github.com/...এবং আপনার গিটহাব অ্যাকাউন্টে আপনার এসএসএইচ কী যুক্ত করা উচিত । দেখুন: আমার কোন দূরবর্তী URL ব্যবহার করা উচিত?

গিটহাব - এসএসএইচ দিয়ে ক্লোন করুন

একটি শংসাপত্র সহায়ক

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

  • ম্যাক: git config --global credential.helper osxkeychain( osxkeychain helperপ্রয়োজনীয়),
  • উইন্ডোজ: git config --global credential.helper wincred
  • লিনাক্স এবং অন্যান্য: git config --global credential.helper cache

.netrc

অন্য পদ্ধতিটি হ'ল ~/.netrc( _netrcউইন্ডোজে) যেমন আপনার ব্যবহারকারী / পাসওয়ার্ড কনফিগার করুন

machine github.com
login USERNAME
password PASSWORD

OAuth এর

পরিবর্তনগুলি ঠেকাতে OAuth টোকেন ( ব্যক্তিগত API টোকেন ) ব্যবহার করুন Use

git push https://4UTHT0KEN@github.com/foo/bar

সম্পর্কিত:


1

এছাড়াও যদি আপনি উইন্ডোজ ব্যবহার করেন তবে আপনি এটি ব্যবহার করতে পারেন:

$ git config --global credential.helper wincred

আপনাকে আরও একবার সাইন ইন করতে হবে এবং তারপর গিট মনে রাখবে।


1

ব্যবহারকারীর নাম জিজ্ঞাসা করা আমার জন্য বিরক্তিকর, তবে একটি পাসওয়ার্ড জিজ্ঞাসা করা ভাল কারণ এটি নিশ্চিত করে যে আপনি সত্যই আপনার পরিবর্তনগুলি দিয়ে সর্বজনীন যেতে চান ...

সুতরাং আমি এটি কেবল আমার ".gitconfig" এ যুক্ত করব

[url "https://myusername@github.com"]
    insteadOf = https://github.com

0

ব্যবহার করুন উইন্ডোজ জন্য Git প্রমাণপত্রাদি ব্যবস্থাপক , যদি আপনি Windows এ করছি।

এই প্রকল্পের অন্তর্ভুক্ত :

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

কেবল সর্বশেষতম সংস্করণটি ডাউনলোড করুন এবং এটি ইনস্টল করুন।

কিভাবে ব্যবহার করে

আপনি না। শংসাপত্রের প্রয়োজন হলে এটি যাদুতে কাজ করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.