গিট টানার পাসওয়ার্ড সহ কমান্ড কীভাবে প্রবেশ করবেন?


140

আমি এই কমান্ডটি এক লাইনে করতে চাই:

git pull && [my passphrase]

এটা কিভাবে করতে হবে?


: যদি আপনি এই অনুসরণ করে আপনার পাসফ্রেজ পরিবর্তন করতে পারেন খালি হতে help.github.com/articles/working-with-ssh-key-passphrases
jacerate

1
আপনি যদি ssh এজেন্ট পরিচালনা করেন তবে আপনি একটি পাসফ্রেজ টাইপ করার প্রয়োজনীয়তার দিকটি আটকে রাখতে পারেন। আপনি যখন প্রথমবার গিট টানেন, তখন আপনি এটি ইন্টারেক্টিভ করে করবেন এবং এসএসএইচ এজেন্ট আপনার প্রাইভেট কীটি মনে রাখবে এবং আপনি অনুরোধ না করেই গিট টান চালাতে পারেন।
টিম ফাইনার

উত্তর:


162

এটি আপনি যা চেয়েছিলেন ঠিক তা নয়, তবে http (গুলি) এর জন্য:

  • আপনি পাসওয়ার্ডটি .netrc ফাইলে রাখতে পারেন (উইন্ডোতে _netrc)। সেখান থেকে এটি স্বয়ংক্রিয়ভাবে তোলা হবে। এটি 600 অনুমতি নিয়ে আপনার বাড়ির ফোল্ডারে যাবে।
  • আপনি কেবলমাত্র রেপোটি দিয়ে ক্লোন করতে পারেন https://user:pass@domain/repoতবে এটি সত্যই প্রস্তাবিত নয় কারণ এটি আপনার ব্যবহারকারীর / প্রচুর জায়গায় দেখায় ...
  • একটি নতুন বিকল্প শংসাপত্র সহায়ক ব্যবহার করা হয় । নোট করুন যে শংসাপত্রগুলি স্ট্যান্ডার্ড শংসাপত্র সহায়ক ব্যবহার করে আপনার স্থানীয় কনফিগারেশনে স্পষ্ট পাঠ্যে সংরক্ষণ করা হবে। উইন্ড্রেডের সাথে শংসাপত্র-সহায়কও উইন্ডোতে ব্যবহার করা যেতে পারে।

শংসাপত্র সহায়ক জন্য ব্যবহারের উদাহরণ

  • git config credential.helper store - শংসাপত্রগুলি অনির্দিষ্টকালের জন্য সঞ্চয় করে।
  • git config credential.helper 'cache --timeout=3600'- 60 মিনিটের জন্য স্টোর

Ssh- ভিত্তিক অ্যাক্সেসের জন্য, আপনি ssh এজেন্ট ব্যবহার করবেন যা প্রয়োজনের সময় ssh কী সরবরাহ করবে। এটির জন্য আপনার কম্পিউটারে কী উত্পন্ন করা, দূরবর্তী সার্ভারে সর্বজনীন কী সংরক্ষণ করা এবং প্রাসঙ্গিক কীস্টোরে ব্যক্তিগত কী যুক্ত করা দরকার।


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

1
@ পেড্রোডোসো মনে হচ্ছে এই থ্রেডটি আপনি যা করছেন তার পরে
eis

2
আমি ডিপ্লয় কীগুলি ব্যবহার করার প্রক্রিয়াটি শেষ করেছি, এটি একটি ভাল সমাধান বলে মনে হচ্ছে। ধন্যবাদ!
পেড্রো দুসো

129

কমান্ড লাইনে https সংযোগের জন্য শংসাপত্র সরবরাহ করার একটি উপায় খুঁজে পেয়েছি। গিট টানতে এবং সেখানে শংসাপত্রগুলি অন্তর্ভুক্ত করার জন্য আপনাকে কেবল সম্পূর্ণ URL নির্দিষ্ট করতে হবে:

git pull https://username:password@mygithost.com/my/repository

আপনার আগে শংসাপত্রগুলির সাথে সংগ্রহস্থলটি ক্লোন করার দরকার নেই, এর অর্থ আপনার শংসাপত্রগুলি শেষ হয় না .git/config। (তবে নিশ্চিত হয়ে নিন যে আপনার শেল আপনার সাথে বিশ্বাসঘাতকতা না করে এবং একটি ইতিহাসের ফাইলে কমান্ড লাইন সঞ্চয় করে))


পাসওয়ার্ড প্রয়োজন হয় না, এবং এইভাবে পাসওয়ার্ড লিখতে এটি অনিরাপদ
উলটা

এটি ইতিমধ্যে 2012 সালে আমি গৃহীত উত্তরে তালিকাভুক্ত জিনিসগুলির মধ্যে একটি নয়?
eis

8
@ আইস: ঠিক না মুল বক্তব্যটি হ'ল ইউপিএলটিতে শংসাপত্রগুলি অন্তর্ভুক্ত করার জন্য আপনার সংগ্রহস্থলটি ক্লোন করার দরকার নেই তবে শংসাপত্রগুলির সাথে ইউআরএল থেকে টানতে পারেন । প্রভাবটি হ'ল শংসাপত্রগুলি .git / কনফিগারেশন ফাইলে শেষ হয় না।
হোলজেরো

5
আপনি যদি :passwordঅংশটি বাদ দেন তবে এন্টার টিপানোর পরে আপনাকে পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে। এইভাবে, আপনার পাসওয়ার্ড বাশ ইতিহাসে সংরক্ষণ করা হবে না।
ম্যাথিয়াস ফিশার 16

1
হ্যাঁ @ প্রমোদগার্গ ব্যবহার করুন - গিট টান ব্যবহারকারীর নাম: password@mygithost.com/my/repository.git শাখা
PAVITRA

39

প্রশ্নের সরাসরি উত্তর দেয় না, তবে আমি দূরবর্তী সার্ভারে ক্লিক করার সময় প্রতিবার পাসওয়ার্ডটি পুনরায় প্রবেশ না করে মূলত কোনও উপায় অনুসন্ধান করার সময় আমি এই প্রশ্নটি পেয়েছি ।

ঠিক আছে, gitসীমাবদ্ধ সময়ের জন্য আপনাকে আপনার শংসাপত্রগুলি ক্যাশে করার অনুমতি দেয়। এটি এতে কাস্টমাইজযোগ্য git configএবং এই পৃষ্ঠাটি এটি খুব ভালভাবে ব্যাখ্যা করেছে:

https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux

একটি টার্মিনালে, চালান:

$ git config --global credential.helper cache
# Set git to use the credential memory cache

ক্যাশে সময়সীমা কাস্টমাইজ করতে, আপনি এটি করতে পারেন:

$ git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)

আপনার শংসাপত্রগুলি অনুরোধকৃত সময়ের জন্য মেমরির মধ্যে সংরক্ষণ করা হবে।


5

নোট করুন যে গিট শংসাপত্রের সহায়তা সহায়ক "স্টোর" কীভাবে এনক্রিপ্ট করা পাসওয়ার্ডগুলি গিট 2.5+ (Q2 2014) এর সাথে পরিবর্তন করে তা সংরক্ষণ করবে । জুনিও সি হামানো দ্বারা প্রতিশ্রুতিবদ্ধ 17c7f4d
দেখুন ( )gitster

credential-xdg

storeXDG কনফিগারেশন ফাইলের অবস্থান নির্দিষ্ট করার সময় সম্মান জানাতে শংসাপত্র সহায়কটির " " নমুনা ব্যাকএন্ডটি টুইঙ্ক করুন।

ডক এখন বলেছেন:

নির্দিষ্ট না হলে:

  • থেকে শংসাপত্রগুলি অনুসন্ধান করা হবে ~/.git-credentialsএবং $XDG_CONFIG_HOME/git/credentials, এবং
  • শংসাপত্রগুলি ~/.git-credentialsএটি উপস্থিত থাকলে লিখিত হবে , বা $XDG_CONFIG_HOME/git/credentialsএটি উপস্থিত থাকলে এবং প্রাক্তন না থাকলে।

0

সিএমডি নীচে কাজ করবে যদি আমাদের পাসওয়ার্ডে @ না থাকে: আপনার git pull https://username:pass@word@mygithost.com/my/repository যদি পাসওয়ার্ডে @ থাকে তবে নীচে দেখানো হিসাবে এটি% 40 দ্বারা প্রতিস্থাপন করুন: git pull https://username:pass%40word@mygithost.com/my/repository

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