मेरे पास गिट के साथ एक वेबसाइट निर्देशिका है। मैं ट्विटर बूटस्ट्रैप, रंगबॉक्स और कमज जैसे आवश्यक पुस्तकालयों के लिए submodules का उपयोग करता हूं क्योंकि मुझे स्रोत कोड को ट्रैक नहीं करना चाहिए बल्कि केवल उनके कोड का संस्करण उपयोग करना चाहिए।सबमिड्यूल के साथ गिट आर्काइव निर्यात (गिट आर्काइव सभी/रिकर्सिव)
अब मैं प्रोजेक्ट को तैनात करना चाहता हूं और इसलिए मुझे सबमिशन कोड भी चाहिए। git archive
का उपयोग करके मुझे submodules से स्रोत फ़ाइलें/कोड नहीं मिलता है।
निम्नलिखित तीन दृष्टिकोण प्राप्त करने के लिए मैं क्या चाहते हैं की कोशिश लेकिन काम dont't: http://git.661346.n2.nabble.com/Running-git-archive-recursively-over-submodules-td4577012.html
में 1 दृष्टिकोण
#!/bin/sh
export revision="$1"
export GIT_INDEX_FILE=".git/tmpindex"
rm -f "$GIT_INDEX_FILE"
git read-tree $revision
export up="$(pwd)"
read_one_level() {
export GIT_ALTERNATE_OBJECT_DIRECTORIES="$GIT_ALTERNATE_OBJECT_DIRECTORIES":$(
git submodule foreach 'echo "$up/$path/.git/objects"' |
grep -E -v '^(Entering|No submodule mapping found)' |
tr '\n' : |
sed 's/:$//'
)
git submodule foreach '
cd "$up"
subcommit=$(git rev-parse :"$path")
git rm --cached "$path"
git read-tree -i --prefix="$path/" $subcommit
' >/dev/null
}
while git ls-files -s | grep -q ^160000; do
read_one_level
done
git archive --format=tar $(git write-tree)
rm -f "$GIT_INDEX_FILE"
थॉमस रास्ट यह मैं लिनक्स में दोनों के रूप में विंडोज पर त्रुटियों देता है कि कोई वस्तु फाइलें नहीं मिली हैं।
2 दृष्टिकोण https://github.com/meitar/git-archive-all.sh
विंडोज पर नहीं मिला mktemp के बारे में शिकायत नहीं है। और git archive
के लिए कॉल को सही (git-archive
से) राल में submodules देना नहीं है ... :(
3 दृष्टिकोण https://github.com/Kentzo/git-archive-all
नवीनतम अजगर 3.3 के लिए संगत नहीं होने से देखने की मेरी बात से पुरानी हो चुकी है और अभी भी पूरी तरह से 2.7 का उपयोग कर, क्योंकि samefile शिकायत से काम नहीं कर रहा
तो मेरे सवाल है:। वहाँ किसी भी हाल ही में जिस तरह से/दृष्टिकोण/निर्यात से निपटने के लिए submodules सहित एक Git परियोजना संग्रह है
?या मुझे इस वर्कफ़्लो के लिए उपट्री की जांच करनी चाहिए?
अग्रिम
मैं केंटज़ो/गिट-आर्काइव-सब का लेखक हूं। यह अब Python 3.3 संगत है। दूसरा मुद्दा क्या है? – Kentzo