जवाबों:
आप कमांड के साथ किसी भी कॉन्फ़िगर किए गए दूरस्थ URL की सूची प्राप्त कर सकते हैं git remote -v
।
यह आपको निम्नलिखित की तरह कुछ देगा:
base /home/***/htdocs/base (fetch)
base /home/***/htdocs/base (push)
origin git@bitbucket.org:*** (fetch)
origin git@bitbucket.org:*** (push)
-v
"क्रिया" के लिए वास्तव में अधिक सामान्य विकल्प है। इसका समर्थन भी किया जाता है git branch
। मूल अंतर छोटा बनाम लंबे विकल्प (एकल बनाम डबल डैश, अनिवार्य रूप से) है, जिसमें कहा गया है कि, सबकोमांड के साथ समर्थन remote
करने से समझ में आएगा। यदि आप वास्तव में यह चाहते हैं, तो मैं कहूंगा कि एक सुविधा अनुरोध सबमिट करें।
एफडब्ल्यूआईडब्ल्यू, मेरे पास बिल्कुल वही सवाल था, लेकिन मुझे इसका जवाब नहीं मिला। यह शायद पोर्टेबल नहीं है, लेकिन कम से कम गिटोलिट के लिए, मैं जो चाहता हूं उसे प्राप्त करने के लिए निम्नलिखित चला सकता हूं:
$ ssh git@git.xxx.com info
hello akim, this is gitolite 2.3-1 (Debian) running on git 1.7.10.4
the gitolite config gives you the following access:
R W android
R W bistro
R W checkpn
...
अब तक के उत्तर आपको बताते हैं कि मौजूदा शाखाओं को कैसे खोजना है:
git branch -r
या एक ही परियोजना के लिए रिपॉजिटरी [नीचे नोट देखें] :
git remote -v
एक और मामला है। आप एक ही सर्वर पर होस्ट किए गए अन्य प्रोजेक्ट रिपॉजिटरी के बारे में जानना चाह सकते हैं।
उस जानकारी को खोजने के लिए, मैं मेजबान में लॉग इन करने के लिए और अन्य रिपॉजिटरी वाली निर्देशिकाओं को खोजने के लिए SSH या PuTTY का उपयोग करता हूं ls
। उदाहरण के लिए, यदि मैंने टाइप करके एक रिपॉजिटरी को क्लोन किया है:
git clone ssh://git.mycompany.com/git/ABCProject
और जानना चाहते हैं कि और क्या उपलब्ध है, मैं git.mycompany.com पर SSH या PuTTY के माध्यम से लॉग इन करता हूं और टाइप करता हूं:
ls /git
यह ls
कहते हुए :
ABCProject DEFProject
मैं कमांड का उपयोग कर सकता हूं
git clone ssh://git.mycompany.com/git/DEFProject
अन्य परियोजना तक पहुंच प्राप्त करने के लिए।
नोट: आमतौर पर
git remote
मुझे बस के बारे में बताता हैorigin
- भंडार जिसमें से मैंने परियोजना को क्लोन किया था।git remote
यदि आप एक ही प्रोजेक्ट पर काम कर रहे दो या दो से अधिक लोगों के साथ सहयोग कर रहे थे और एक-दूसरे की रिपॉजिटरी तक पहुंच बना रहे थे, तो यह संभव नहीं था।
दूरस्थ शाखाओं को देखने का एक सरल तरीका है:
git branch -r
स्थानीय शाखाओं को देखने के लिए:
git branch -l
git ls-remote
आपको अपस्ट्रीम सर्वर ( git-scm.com/docs/git-ls-remate ) से लाने के लिए उपलब्ध सभी रीमोट्स दिखाने चाहिए । मेरा मानना है कि इस पृष्ठ के सभी उत्तर केवल आपको बताते हैं कि उन रीमोट और ट्रैकिंग शाखाओं को कैसे सूचीबद्ध किया जाए जिन्हें आपने पहले ही प्राप्त कर लिया है, जो कि कैच -22 है। आप तब तक रिमोट नहीं ला सकते, जब तक आप यह नहीं जानते कि इसे अपस्ट्रीम सर्वर पर कैसे भेजा जाए।
उन तरीकों में से कोई भी उस तरीके से काम नहीं करता है जिस तरह से प्रश्नकर्ता पूछ रहा है और जिसकी मुझे अक्सर आवश्यकता थी। उदाहरण के लिए:
$ git remote
fatal: Not a git repository (or any of the parent directories): .git
$ git remote user@bserver
fatal: Not a git repository (or any of the parent directories): .git
$ git remote user@server:/home/user
fatal: Not a git repository (or any of the parent directories): .git
$ git ls-remote
fatal: No remote configured to list refs from.
$ git ls-remote user@server:/home/user
fatal: '/home/user' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
ऐसा करने का पूरा बिंदु यह है कि आपके पास दूरस्थ उपयोगकर्ता और सर्वर को छोड़कर कोई जानकारी नहीं है और यह पता लगाना चाहते हैं कि आपके पास क्या पहुंच है।
अधिकांश उत्तर मान लेते हैं कि आप एक काम कर रहे सेट के भीतर से क्वेरी कर रहे हैं। प्रश्नकर्ता मान रहा है कि आप नहीं हैं।
एक व्यावहारिक उदाहरण के रूप में, मान लें कि सर्वर पर एक रिपॉजिटरी foo.git था। उनकी बुद्धि में कोई यह तय करता है कि उन्हें इसे foo2.git में बदलने की आवश्यकता है। सर्वर पर गिट डायरेक्टरी की सूची बनाना वास्तव में अच्छा होगा। और हाँ, मैं समस्याओं के लिए देख रहा हूँ। हालांकि यह अभी भी अच्छा होगा।
git remote -v
क्योंकि -v क्रिया के लिए है।git remote
रीमोट की एक सरल सूची देता है (आधार, इस मामले में उत्पत्ति)। -V विकल्प में प्रत्येक दूरस्थ के लाने और धक्का संचालन दोनों के लिए url शामिल है।