git checkout master
git archive stage | tar -czf archive.tar.gz htdocs
# archives master because it's checked out.
मैं वर्तमान में चालू होने के बावजूद स्टेज शाखा कैसे संग्रहीत कर सकता हूं?मैं एक मनमानी शाखा संग्रह कैसे कर सकता हूं?
git checkout master
git archive stage | tar -czf archive.tar.gz htdocs
# archives master because it's checked out.
मैं वर्तमान में चालू होने के बावजूद स्टेज शाखा कैसे संग्रहीत कर सकता हूं?मैं एक मनमानी शाखा संग्रह कैसे कर सकता हूं?
गिट आर्काइव एक टैर संग्रह बनाता है ताकि आपको इसके आउटपुट टैर को पाइप करने की आवश्यकता न हो, वास्तव में यह वही नहीं कर रहा है जो आप उम्मीद करते हैं। आप स्टेज शाखा का एक टैर आर्काइव बना रहे हैं और इसे सामान्य टैर कमांड पर पाइप कर रहे हैं जो अपने मानक इनपुट का उपयोग नहीं करता है, लेकिन कामकाजी पेड़ में स्वतंत्र रूप से गिट के htdocs
का अपना संग्रह बनाता है।
प्रयास करें:
git archive stage >stage.tar
या, एक संपीड़ित संग्रह के लिए:
git archive stage | gzip >stage.tar.gz
सिर्फ htdocs सबफ़ोल्डर संग्रहीत करने के लिए आप कर सकते हैं:
git archive stage:htdocs | gzip >stage-htdocs.tar.gz
या, फ़ोल्डर शामिल करने के लिए संग्रह में नाम:
git archive --prefix=htdocs/ stage:htdocs | gzip >stage-htdocs.tar.gz
या अधिक बस:
git archive stage htdocs | gzip >stage-htdocs.tar.gz
कि पिछले एक प्रतिबद्ध और उपसर्ग 'htdocs /' के साथ हर पथ नाम की जड़ पेड़ को संग्रहीत कर देगा (उदा 'htdocs/rootfile.c',' htdocs/sub/file.pl', और 'htdocs/htdocs/htdocfile.html')। इसे या तो पेड़-आश 'मंच: htdocs' निर्दिष्ट करना चाहिए (जिसमें उपसर्ग फिर से जोड़ा जाता है), या आप केवल 'गिट आर्काइव चरण htdocs' का उपयोग कर सकते हैं। –
@ क्रिस जॉनसन: धन्यवाद, यह वास्तव में एक प्रतिलिपि और पेस्ट त्रुटि थी; मेरा मतलब था कि यह पिछले कमांड का एक बदलाव हो। –