কীভাবে `git:` url- কে `http:` url এ রূপান্তর করবেন


139

আমি একটি http প্রক্সি পিছনে কাজ করছি। আমি তাদের "রেপো" সরঞ্জামটি ব্যবহার করে অ্যান্ড্রয়েডের উত্স ট্রিটিকে ক্লোন করার চেষ্টা করছি।

এই সরঞ্জামটি git://ইউআরএলগুলি ব্যবহার করতে জোর দেয় , যদিও http://ইউআরএলগুলিও কাজ করে। ফলস্বরূপ, আমি উত্সটি ডাউনলোড করতে পারি না।

gitসর্বদা ব্যবহার করতে বাধ্য করা কি সম্ভব http?

সম্পাদনা করুন: আমার http_proxy সঠিকভাবে কনফিগার করা হয়েছে। উদাহরণস্বরূপ, এটি কাজ করে:

git clone http://android.git.kernel.org/platform/manifest.git

তবে এটি হয় না (ত্রুটিযুক্ত = সংযোগের সময়সীমা শেষ হয়ে গেছে):

git clone git://android.git.kernel.org/platform/manifest.git

সুতরাং এই উত্তর আমাকে সত্যিই সাহায্য করে না।


উত্তর:


297

গিটহাবের জন্য ডিফল্ট প্রোটোকলটি পুনরায় লেখার উদাহরণ এখানে রয়েছে:

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

গিট ডকুমেন্টেশন এর জন্য url.<base>.insteadOf:

git config [--global] url.<base>.insteadOf <other_url>

এই মান দিয়ে শুরু হওয়া যে কোনও ইউআরএল, পরিবর্তে, আবার শুরুতে আবার লিখতে হবে <base>। এর পরিবর্তে একাধিক স্ট্রিং যখন প্রদত্ত ইউআরএল মেলে তখন দীর্ঘতম মিলটি ব্যবহৃত হয়।


19
ফায়ারওয়াল যখন গিট প্রোটোকলকে ব্লক করে! :)
ওয়াজটেক তুরোইচিজ

আমি কি এখানে একটি প্রশ্ন জিজ্ঞাসা করতে পারি? আমি এটি ব্যবহার করছিলাম তবে "https" না দিয়ে "হিপস" লিখেছি। আমি কীভাবে এটি সংশোধন করতে পারি? 'গিট কনফিগারেশন --global.url। github.com/.insteadOf heeps: //github.com/ 'কাজ?
Xuxu

1
টিপ: git remote -vঅবিলম্বে insteadOfএবং pushInsteadOfকনফিগারগুলির প্রভাব দেখায়
বেনি চেরনিয়াভস্কি-পাসকিন

এটি 22 টি পোর্ট অবরুদ্ধ সহ সর্বজনীন ওয়াইফাইতে আমার পক্ষে কাজ করেছে। কীভাবে কনফিগারটিকে ডিফল্টে ফিরিয়ে দেওয়া যায়?
yivo

14
আমার সংগ্রহশালাটি git@github.com:...ইউআরএলগুলির জন্য একটি ফর্ম্যাট ব্যবহার না করে এই উত্তরটি প্রায় আমার জন্য তৈরি করেছিল । এটি কাজ করেছে: git config --global url."https://github.com/".insteadOf 'git@github.com:'আমার জন্য।
kraenhansen

35

এই রেপো সরঞ্জামটি কীভাবে গিট ব্যবহার করে তা আমি জানি না (এবং যদি আপনি HTTP প্রোটোকল ব্যবহার করতে 'রেপো' কনফিগার করতে পারেন) তবে আপনি এটি url.<base>.insteadOfকনফিগারেশন ভেরিয়েবল ব্যবহার করে চালিত করার চেষ্টা করতে পারেন ( গিট-কনফিগারেশন এবং গিট-ফেচ ম্যান্যাপগুলি দেখুন)।

আপনি কি core.gitProxyফায়ারওয়ালটি দিয়ে যাওয়ার চেষ্টা করেছেন , যদি এটি গিট প্রোটোকল ব্যবহার করে যদি সমস্যা হয়?


2
ধন্যবাদ, এই "পরিবর্তেআফ" ভেরিয়েবলটি আমার যা প্রয়োজন তা হ'ল।
noamtm

23

গিট সংগ্রহস্থলে পুনরাবৃত্তভাবে সাবমডিউল পাওয়ার ক্ষেত্রে আমার একই সমস্যা ছিল। আমি এমন এক ক্রেজি ফায়ারওয়ালের পিছনে আছি যা গিট বন্দরে বহির্গামী সংযোগগুলিকে অনুমতি দেয় না। সাবমডিউলের কয়েকটি সাবমডিউল হিসাবে কোড করা হয়েছিল git://github.com/blah/blah.git। এটি আমার সাবমডিউলগুলির পুনরাবৃত্ত জনসংখ্যাকে হত্যা করেছে। কর্মক্ষেত্রটি নিম্নলিখিত:

git config --global url."https://<GITUSERNAME>@".insteadOf git://

এটি সমস্ত উপ-মডেল সংগ্রহস্থল URL গুলির git://সাথে প্রতিস্থাপন করে https://<GITUSERNAME>@<GITUSERNAME>আপনার নিজের গিট ব্যবহারকারীর নামটি প্রতিস্থাপন করতে হবে। এছাড়াও নোট করুন যে --globalপ্রয়োজনীয়; এই কনফিগারেশনটি কেবল বেস সংগ্রহস্থল ডিরেক্টরিতে যুক্ত করা কার্যকর হয় না।


3
আপনি কেবল গিট কনফিগারেশন ব্যবহার করেন না - গ্লোবাল ইউআরএল "" https: // "ins github.com/angular/angular-phonecat/issues/141 মানে ইউজার নেমটি কি বাধ্যতামূলক?
11

3

আপনি ~/.gitconfigযদি এসএসএইচটি https: // এর সাথে ওভাররাইট করছেন তবে আপনি যাচাই করতে পারবেন ।

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