Git: मैं केवल स्थानीय शाखाओं को कैसे सूचीबद्ध करूं?


935

git branch -a दूरस्थ और स्थानीय दोनों शाखाओं को दर्शाता है।

git branch -r दूरस्थ शाखाएँ दिखाता है।

क्या सिर्फ स्थानीय शाखाओं को सूचीबद्ध करने का एक तरीका है?

जवाबों:


1443

सिर्फ git branchविकल्प के बिना।

मैनपेज से:

बिना किसी तर्क के, मौजूदा शाखाओं को सूचीबद्ध किया गया है और वर्तमान शाखा को तारांकन चिह्न के साथ उजागर किया जाएगा।


24
मैं उन स्थानीय शाखाओं को सूचीबद्ध करने का एक तरीका खोजने की उम्मीद कर रहा था जिनकी कोई दूरवर्ती शाखा नहीं है।
स्टीव क्रेन

5
पूरी तरह से नहीं, लेकिन मेरे प्रश्न का उत्तर मैं उन स्थानीय शाखाओं को कैसे सूचीबद्ध करूं जिनकी कोई दूरस्थ शाखा नहीं है, कुछ मदद प्रदान करते हैं।
स्टीव क्रेन

3
@ c00kiemon5ter मुझे पसंद है कि आप कैसे अंक का एक गुच्छा पाने के लिए एक रास्ता मिल गया! बहुत ही हास्यास्पद।
अब्राम

4
यह कैसे कहा गया सही उत्तर है ("... सूची के लिए * सिर्फ स्थानीय शाखाएँ ...") ???
वाग्नेर दा सिल्वा

7
@ gr4viton: अंग्रेजी की उन बोलियों में, जिनसे मैं परिचित हूं, "केवल स्थानीय शाखाएं सूचीबद्ध करें" आमतौर पर "केवल उन शाखाओं को सूचीबद्ध करें जो स्थानीय हैं"। (कहने के लिए "उन शाखाओं को सूचीबद्ध करें जो केवल स्थानीय हैं", मैं कहूंगा "सूची केवल स्थानीय शाखाएं"।)
मैथ्यू के।

221

बस सादा आदेश

git branch

5
इस उत्तर में स्वीकृत उत्तर के समान ही स्टाम्प है। स्वीकृत उत्तर को मिलीसेकंड भाग में आगे होना चाहिए :)
आरबीटी

4
@ आरबीटी समय को हटाएं। यह उत्तर 9 सेकंड तेज था।
केविन कर्मकार

1
c00kiemon5ter जवाब के लिए क्रेडिट के हकदार हैं!
आकाशदेव

75

git branch -a- सभी शाखा।

git branch -r- दूरस्थ शाखाएँ ही।

git branch -l या git branch- केवल स्थानीय शाखाएँ।


मेरे लिए इस उत्तर का प्रारूपण -lखड़ा होने का सुझाव देता है --local, जबकि यह वास्तव में है --list। मैं उस भ्रम से बचने के लिए इसे हटाने का सुझाव दूंगा - तकनीकी रूप से इस उत्तर में सभी कमांड का उपयोग कर सकते हैं -lऔर वे अभी भी उसी परिणाम को वापस करेंगे।
थिबॉड कोलास

34

यदि अग्रणी तारांकन एक समस्या है, तो मैं git branchनिम्नानुसार पाइप करता हूं

git branch | awk -F ' +' '! /\(no branch\)/ {print $2}'

यह '(कोई शाखा नहीं)' पंक्ति को भी समाप्त कर देता है जो तब दिखाई देता है जब आपने सिर को अलग कर लिया होता है।


1
git branch | awk -F ' +' '$2 !~ /detached/ {print $2}'1.9.1.1 संस्करण के लिए इसे संशोधित करना पड़ा ।
इउरि

6
cut -c 3-एक आसान विकल्प है
एलेक्सी

32

यह करने के लिए सबसे सरल तरीकों में से एक है

git for-each-ref --format='%(refname:short)' refs/heads/

यह स्क्रिप्ट के लिए भी पूरी तरह से काम करता है।


12

यहां स्थानीय शाखाओं को सूचीबद्ध करने का तरीका बताया गया है, जिनके नाम के साथ मूल शाखा नहीं है:

git branch | sed 's|* |  |' | sort > local
git branch -r | sed 's|origin/||' | sort > remote
comm -23 local remote

3
नाइस, ऑनलाइनर: comm -23 <(git branch | sed 's|* | |' | sort) <(git branch -r | sed 's|origin/||' | sort )
gr4viton

10

सूची प्राप्त करने का अन्य तरीका सिर्फ स्थानीय शाखा है:

git branch -a | grep -v 'remotes'

4

स्थानीय केवल शाखाओं को हटाने के तरीके के बारे में पोस्ट का बहुत अच्छा जवाब है। इसमें, स्थानीय शाखाओं को सूचीबद्ध करने के लिए साथी एक कमांड बनाता है:

git branch -vv | cut -c 3- | awk '$3 !~/\[/ { print $1 }'

उत्तर में एक महान विवरण है कि यह आदेश कैसे प्राप्त किया गया था, इसलिए मैं आपको उस पोस्ट को पढ़ने और पढ़ने का सुझाव दूंगा।


उत्तर को लिंक करने के लिए धन्यवाद। मुझे स्थानीय शाखाओं को सूचीबद्ध करने के लिए एक अहंकार की आवश्यकता थी जो रिमोट को ट्रैक नहीं करती हैं । यह एक ही काम करता है।
JuroOravec

2

@ Gertvdijk के उत्तर को पूरक करने के लिए - मैं कुछ स्क्रीनशॉट जोड़ रहा हूं यदि यह किसी को त्वरित मदद करता है।

मेरे गित बश खोल पर

गिट शाखा

बिना किसी पैरामीटर के कमांड मेरी सभी स्थानीय शाखाओं को दिखाता है। वर्तमान शाखा जिसे वर्तमान में चेक किया गया है, अलग-अलग रंग (हरा) में तारांकन (*) उपसर्ग के साथ दिखाया गया है जो वास्तव में सहज है।

यहां छवि विवरण दर्ज करें

जब आप दूरस्थ शाखाओं सहित सभी शाखाओं को देखने का प्रयास करते हैं

गिट शाखा-ए

तब सुदूर शाखाओं की जाँच की जाती है जिन्हें अभी तक लाल रंग में नहीं दिखाया गया है:

यहां छवि विवरण दर्ज करें


1
एक हजार शब्द जिसमें से कोई भी नकल नहीं कर सकता है?
टोनी एडम्स

2
अगर मुझे कुछ याद आ रहा है तो @TonyAdams मुझे खेद है, लेकिन दोनों कमांड जिनके आउटपुट मैंने चित्रों में प्रदर्शित किए हैं, पोस्ट में ग्रे बैकग्राउंड (कोड स्वरूपण) में उल्लिखित थे। कोई बात नहीं, मैंने इसे और भी पठनीय बनाने के लिए पोस्ट के प्रारूपण में सुधार किया है। आपकी प्रतिपुष्टि की सराहना।
आरबीटी
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.