আপনি যখন সিনট্যাক্স ব্যবহার করে আপনার প্রথম ক্লোন করবেন
git clone username@server:gitRepo.git
Initial প্রাথমিক ক্লোনটির নাম খুঁজে পাওয়া কি আপনার স্থানীয় সংগ্রহশালা ব্যবহার করে সম্ভব?
(সুতরাং উপরের উদাহরণে, সন্ধান করুন gitRepo.git
।)
আপনি যখন সিনট্যাক্স ব্যবহার করে আপনার প্রথম ক্লোন করবেন
git clone username@server:gitRepo.git
Initial প্রাথমিক ক্লোনটির নাম খুঁজে পাওয়া কি আপনার স্থানীয় সংগ্রহশালা ব্যবহার করে সম্ভব?
(সুতরাং উপরের উদাহরণে, সন্ধান করুন gitRepo.git
।)
উত্তর:
সংগ্রহস্থল রুটে .git/config
ফাইলটি দূরবর্তী সংগ্রহস্থল এবং শাখা সম্পর্কিত সমস্ত তথ্য ধারণ করে। আপনার উদাহরণে, আপনার এমন কিছু সন্ধান করা উচিত:
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = server:gitRepo.git
এছাড়াও, গিট কমান্ড git remote -v
দূরবর্তী সংগ্রহস্থলের নাম এবং URL প্রদর্শন করে। "উত্স" দূরবর্তী সংগ্রহস্থল সাধারণত মূল সংগ্রহস্থলের সাথে মিলে যায়, যা থেকে স্থানীয় অনুলিপি ক্লোন করা হয়েছিল।
git remote show origin
কেবল সেই দূরবর্তী সম্পর্কে আরও অনেক তথ্য দেখতে ব্যবহার করতে পারেন।
git remote -v
কেবল পড়ে এবং লেখায় বলে মনে হয় .git/config
।
git config --get remote.origin.url
git remote show origin
নেটওয়ার্কে কল করেছে।
এটি তাত্ক্ষণিক বাশ আদেশ, যা আপনি সম্ভবত সন্ধান করছেন, এটি দূরবর্তী সংগ্রহস্থলের কেবলমাত্র একটি বেস প্রিন্ট করবে:
আপনি যেখান থেকে আনছেন :
basename $(git remote show -n origin | grep Fetch | cut -d: -f2-)
বিকল্পভাবে যেখানে আপনি ধাক্কা থেকে :
basename $(git remote show -n origin | grep Push | cut -d: -f2-)
বিশেষত -n
বিকল্পটি কমান্ডটিকে আরও দ্রুত তৈরি করে।
organization/repo
গিথুব বা গীতলবের মতো গিট হোস্টের কাছ থেকে স্ট্রিংটি নেওয়ার চেষ্টা করে আমি এই প্রশ্নটিতে হোঁচট খেয়েছি।
এটি আমার পক্ষে কাজ করছে:
git config --get remote.origin.url | sed -e 's/^git@.*:\([[:graph:]]*\).git/\1/'
এটি কমান্ডের sed
আউটপুটকে git config
কেবল সংগঠন এবং রেপো নামের সাথে প্রতিস্থাপন করতে ব্যবহার করে ।
নিয়মিত অভিব্যক্তিতে github/scientist
চরিত্র শ্রেণীর সাথে কিছু [[:graph:]]
মিলবে।
দ্য \1
সিড সব কিছু ঠিক ম্যাচযুক্ত অক্ষরের সাথে প্রতিস্থাপন করতে বলে।
git config --get remote.origin.url | sed -e 's/^git@.*:\([[:graph:]]*\).git/\1/'
git remote show origin -n | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'
এটি তিনটি ভিন্ন ইউআরএল স্টাইল দিয়ে পরীক্ষা করা হয়েছিল:
echo "Fetch URL: http://user@pass:gitservice.org:20080/owner/repo.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'
echo "Fetch URL: Fetch URL: git@github.com:home1-oss/oss-build.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'
echo "Fetch URL: https://github.com/owner/repo.git" | ruby -ne 'puts /^\s*Fetch.*(:|\/){1}([^\/]+\/[^\/]+).git/.match($_)[2] rescue nil'