मैं यह पता नहीं लगा सकता कि नए बिट-बकेट प्रारूप में किसी पुरानी कमिट के स्रोत तक कैसे पहुँचा जाए, इस बारे में डॉक्यूमेंटेशन नहीं मिल सकता है। क्या यह अब भी संभव है?
मैं यह पता नहीं लगा सकता कि नए बिट-बकेट प्रारूप में किसी पुरानी कमिट के स्रोत तक कैसे पहुँचा जाए, इस बारे में डॉक्यूमेंटेशन नहीं मिल सकता है। क्या यह अब भी संभव है?
जवाबों:
मैं समझता हूं कि आप एक Mercurial / Git क्लाइंट का उपयोग किए बिना BitBucket वेब इंटरफ़ेस के माध्यम से एक पुराने संस्करण को डाउनलोड करना चाहते हैं।
इस संबंधित प्रश्न की जाँच करें । टिप्पणियों पर, कोई कहता है कि ऐसा करने का कोई तरीका नहीं है। सौभाग्य से, यह पूरी तरह सच नहीं है।
BitBucket प्रोजेक्ट पेज पर नेविगेट करने से, मुझे एक मनमाना संस्करण डाउनलोड करने के लिए कोई लिंक नहीं मिला। प्रारूप में विशिष्ट टैग डाउनलोड करने के लिए लिंक हैं:
https://bitbucket.org/owner/repository/get/v0.1.2.tar.gz
लेकिन ऊपर दिए गए यूआरएल को थोड़ा मोड़कर, कमिट हैश द्वारा टैग नाम को बदलना, जैसे:
https://bitbucket.org/owner/repository/get/A0B1C2D.tar.gz
आप वास्तव में एक विशिष्ट संस्करण डाउनलोड कर सकते हैं।
जैसा कि एक टिप्पणी में रक्का ने उल्लेख किया है , कार्यों .tar.gz
द्वारा .zip
भी प्रतिस्थापित किया गया है।
api.bitbucket.org
अब होना चाहिए
bitbucket.org
मैं यह पता लगाने की कोशिश कर रहा था कि क्या गीथहब पर आप पहले की तरह के कोड को ब्राउज़ करना संभव है और यह मुझे यहां लाया। मैंने यहां पाई जाने वाली जानकारी का उपयोग किया, और उरोजों के साथ चक्कर लगाने के बाद, मुझे वास्तव में पुराने कमिट्स के कोड को ब्राउज़ करने का एक तरीका मिला।
जब आप अपना कोड ब्राउज़ कर रहे हों तो URL कुछ इस प्रकार है:
https://bitbucket.org/user/repo/src/
और इस तरह अंत में एक हैश जोड़कर:
https://bitbucket.org/user/repo/src/a0328cb
आप उस कमिट के बिंदु पर कोड ब्राउज़ कर सकते हैं। मुझे समझ में नहीं आता कि सीधे कमिट चुनने के लिए कोई ड्रॉपडाउन बॉक्स क्यों नहीं है, यह सुविधा पहले से ही है। अजीब।
https://bitbucket.org/lyro/evil/src/8cbfd51
लेकिन यदि आप प्रवेश करते हैं hg clone https://bitbucket.org/lyro/evil/src/8cbfd51
, तो आपको कुछ यादृच्छिक संशोधन मिलेंगे, शायद नवीनतम।
hg clone -r8cbfd51 https://bitbucket.org/lyro/evil/src/
https://bitbucket.org/user/project/commits/0000000000000000000000000000000000000000?at=master
। अब, केवल commits
url में परिवर्तन करें src
और आप इस पर पूर्ण स्रोत ब्राउज़ कर रहे हैं!
बस के मामले में किसी को भी मेरी नाव में है, जहां इन उत्तरों में से कोई भी वास्तव में काम किया है, यहाँ मैं क्या किया है।
शायद हमारे घर में बिटकॉइन सर्वर की तुलना में थोड़ा अलग तरीके से स्थापित किया गया है, लेकिन यहां एक यूआरएल है जिसे मैं आमतौर पर मास्टर शाखा में फाइलों को देखने के लिए जाता हूं:
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse
यदि मैं ड्रॉप डाउन मेनू से मास्टर से अलग शाखा का चयन करता हूं, तो मुझे यह मिलता है:
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse?at=refs%2Fheads%2F<BRANCH_NAME>
इसलिए मैंने ऐसा करने की कोशिश की और यह काम किया:
https://<BITBUCKET_URL>/projects/<PROJECT_GROUP>/repos/<REPO_NAME>/browse?at=<COMMIT_ID>
अब मैं पूरे रेपो को ब्राउज़ कर सकता हूं क्योंकि यह उस कमिट के समय था।
कुछ साल पहले के महान जवाब। अब Bitbucket ने इसे आसान बना दिया है।
आप जिस टैग को डाउनलोड करना चाहते हैं उसे टैग करें (जैसा कि रूडी मटेला ने जवाब में बताया है)।
फिर डाउनलोड पर जाएं और "टैग" टैब पर क्लिक करें और आपको डाउनलोड के लिए कई विकल्प मिलेंगे।
रिकॉर्ड के लिए, आप इस तरह से यूआरएल के चारों ओर खिलौना भी लगा सकते हैं:
नवीनतम स्रोत ब्राउज़ करते समय, आपके पास कुछ ऐसा है:
https://bitbucket.org/my/repo/src/latestcommithash/my.file?at=master
बस कमिट हैश बदलें और GET पैरामीटर निकालें:
https://bitbucket.org/my/repo/src/wantedcommithash/my.file
ऊपर +1 @Hein A. Grønnestad मिला: यह सब काम कर रहा है, वास्तव में सोच रहे हैं कि इसका उपयोग करने के लिए GUI में कुछ भी क्यों नहीं है।
सबसे आसान तरीका है कि आप उस कमिट पर क्लिक करें और उस कमिट में एक टैग जोड़ें। मैंने इस कमिट के साथ 'last_commit' टैग को शामिल किया है
बिट बकेट में साइड नेवी के बाएं कोने में डाउनलोड करने के लिए जाएं। लेफ्ट साइड में डाउनलोड पर क्लिक करें
मुझे पता है कि बहुत देर हो चुकी है, लेकिन एपीआई 2.0 के साथ आप कर सकते हैं
कमांड लाइन से:
curl https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>
या इसके साथ php में:
$data = json_decode(file_get_contents("https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>", true));
तब आपके पास आपकी फ़ाइल का इतिहास (सबसे हाल की प्रतिबद्ध से सबसे पुरानी एक तक):
{
"pagelen": 50,
"values": [
{
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<hash>/<path_file>"
},
"meta": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD>/<path_file>?format=meta"
},
"history": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<HEAD>/<path_file>"
}
},
"commit": {
"hash": "<HEAD>",
"type": "commit",
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/commit/<HEAD>"
},
"html": {
"href": "https://bitbucket.org/<user>/<repo>/commits/<HEAD>"
}
}
},
"attributes": [],
"path": "<path_file>",
"type": "commit_file",
"size": 31
},
{
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD~1>/<path_file>"
},
"meta": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/src/<HEAD~1>/<path_file>?format=meta"
},
"history": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<HEAD~1>/<path_file>"
}
},
"commit": {
"hash": "<HEAD~1>",
"type": "commit",
"links": {
"self": {
"href": "https://api.bitbucket.org/2.0/repositories/<user>/<repo>/commit/<HEAD~1>"
},
"html": {
"href": "https://bitbucket.org/<user>/<repo>/commits/<HEAD~1>"
}
}
},
"attributes": [],
"path": "<path_file>",
"type": "commit_file",
"size": 20
}
],
"page": 1
}
जहां values
> links
> self
इतिहास में पल जो उसे अपने साथ प्राप्त कर सकते हैं पर फ़ाइल प्रदान करता है curl <link>
या file_get_contents(<link>)
।
आखिरकार, कमांड लाइन से जिसे आप फ़िल्टर कर सकते हैं:
curl https://api.bitbucket.org/2.0/repositories/<user>/<repo>/filehistory/<branch>/<path_file>?fields=values.links.self
php में, बस foreach
सरणी पर एक लूप बनाएं $data
।
नोट: यदि <path_file>
एक /
तुम हो उस में कन्वर्ट करने के लिए %2F
।
डॉक यहां देखें: https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%DD/filehistory/%7Bnode%7D/%7Bpath%7D