जवाबों:
यदि शाखाएँ केवल स्थानीय हैं, तो आप -d का उपयोग कर सकते हैं यदि शाखा को विलय कर दिया गया है, जैसे
git branch -d branch-name
यदि शाखा में वह कोड होता है जिसे आप मर्ज करने की योजना नहीं बनाते हैं, तो इसके बजाय -D का उपयोग करें ।
यदि शाखा अपस्ट्रीम रेपो (बिटबकेट पर) में है तो आप रिमोट रेफरेंस को हटा सकते हैं
git push origin :branch-name
इसके अलावा, यदि आप बिटबकैट वेबसाइट पर हैं, तो आप साइट पर कमिट्स के तहत फ़ीचर शाखाओं टैब पर जाकर अपनी शाखाएँ हटा सकते हैं । आपको एक दीर्घवृत्त आइकन मिलेगा। उस पर क्लिक करें, फिर हटाएँ शाखा चुनें । बस सुनिश्चित करें कि आप वहां सभी परिवर्तन छोड़ना चाहते हैं!
Bitbucket से शाखा हटाने के लिए,
@Marcus द्वारा दिए गए उत्तर के अलावा अब आप इसके माध्यम से एक दूरस्थ शाखा को भी हटा सकते हैं:
git push [remote-name] --delete [branch-name]
में Bitbucket बाएं हाथ की ओर मेनू में शाखाओं में जाते हैं।
मैं अपनी अधिकांश शाखाएँ हटा सकता था, लेकिन एक व्यक्ति ऐसा दिखता था और मैं इसे नहीं हटा सकता था:
पता चला कि किसी ने अनियंत्रित होकर वहां से Branch permissions
नीचे सेट किया था । आशा है कि यह किसी की मदद कर सकता है।Settings
Allow deleting this branch
अद्यतन : जहां सेटिंग्स टिप्पणी में सवाल से स्थित हैं। मेनू प्राप्त करने के लिए जिस रिपॉजिटरी को आप संपादित नहीं करना चाहते हैं, उसे दर्ज करें। इसे बदलने के लिए आपको व्यवस्थापक विशेषाधिकारों की आवश्यकता हो सकती है।
यदि आप विकास के लिए एक pycharm आईडीई का उपयोग कर रहे हैं और आप पहले ही इसके साथ Git जोड़ चुके हैं। आप सीधे pycharm से दूरस्थ शाखा को हटा सकते हैं। टूलबार VCS से -> गिट -> शाखाएँ -> शाखा का चयन करें -> और हटाएं । यह दूरस्थ गिट सर्वर से इसे हटा देगा।
मैंने यह छोटी स्क्रिप्ट लिखी है जब मेरे रेपो में शाखाओं की संख्या कई सैकड़ों से अधिक हो गई है। मुझे अन्य तरीकों के बारे में नहीं पता था (सीएलआई के साथ) इसलिए मैंने इसे सेलेनियम के साथ स्वचालित करने का फैसला किया। यह बस Bitbucket वेबसाइट को खोलता है, शाखाओं में जाता है, पृष्ठ को अंत तक स्क्रॉल करता है और प्रत्येक शाखा विकल्प मेनू पर क्लिक करता है -> क्लिक डिलीट बटन -> क्लिक हां। यह अंतिम एन (100 - डिफ़ॉल्ट) शाखाओं को रखने और विशिष्ट नामों (मास्टर, विकसित - डिफ़ॉल्ट, अधिक हो सकता है) के साथ शाखाओं को छोड़ने के लिए ट्यून किया जा सकता है। यदि यह आपके लिए फिट बैठता है, तो आप इस तरह से कोशिश कर सकते हैं।
https://github.com/globad/remove-old-branches
आपको बस रिपॉजिटरी को क्लोन करना है, क्रोम-वेबड्राइवर के उचित संस्करण को डाउनलोड करना है, URL जैसे कुछ स्थिरांक को अपने रिपॉजिटरी में इनपुट करना और स्क्रिप्ट चलाना है।
कोड समझने में काफी सरल है। यदि आपके कोई प्रश्न हैं, तो टिप्पणी लिखें / एक मुद्दा बनाएं।
इस कमांड का प्रयास करें, यह उन सभी शाखाओं को शुद्ध कर देगा जिन्हें develop
शाखा में विलय कर दिया गया है ।
for i in `git branch -r --merged origin/develop| grep origin | grep -v '>' \
| grep -v master | grep -v develop | sed -E "s|^ *origin/||g"`; \
do \
git push origin $i --delete; \
done
में एंड्रॉयड स्टूडियो , आईडीई के दाएं कोने नीचे विकल्प:
यदि आपको मज़ा पसंद है, तो आप बस शाखाओं के लिस्टिंग पृष्ठ पर जा सकते हैं (उदाहरण के लिए विलय) और बस जावास्क्रिप्ट कंसोल में चलाएं:
document.querySelectorAll('tr td div a:first-child').forEach(function(item) { fetch('https://bitbucket.org/snippets/new?owner=<yourprofilenick>', {'credentials': 'same-origin'}).then((response) => {return response.text()}).then(function(string) { return /'csrfmiddlewaretoken' value='(.*)'/g.exec(string)[1] }).then(function(csrf) { if (!~item.innerText.indexOf('/')) return;
fetch(`https://bitbucket.org/!api/2.0/repositories/<your_organization_path>/refs/branches/${item.innerText}`, {headers: {"x-csrftoken": csrf}, credentials: "same-origin", method: 'DELETE'}).then(() => console.log(`${item.innerText} DELETED!`)) }) })
<yourprofilenick>
अपने BitBucket निक के साथ बदलें<your_organization_path>
अपने संगठन पथ के साथ बदलेंपहले हमें पृष्ठ स्रोत में CSRF टोकन के साथ पृष्ठ की आवश्यकता है, इसलिए मैं चुनता हूं:
https://bitbucket.org/snippets/new?owner=<yourprofilenick>
फिर प्रत्येक शाखा के लिए (एक शाखा लिस्टिंग में) यह CSRF टोकन प्राप्त करता है और उस शाखा को हटा देता है।
रेपो सेटिंग में हटाने से पहले संवेदनशील शाखाओं को रोकने के लिए रिमाइबर।
यह मुख्य शाखा को नष्ट नहीं करता है।
आपको लॉग इन करना होगा।
यह केवल उस पृष्ठ पर दिखाई देने वाली शाखाओं को हटाता है (इसलिए बाकी शाखाओं को हटाने के लिए आपको अगले पृष्ठ पर जाना होगा)।