উত্তর:
প্রথমে একবার দেখুন git help archive। archiveএকটি গিট কমান্ড যা কেবল গিট ট্র্যাকড ফাইল যুক্ত সংরক্ষণাগার তৈরি করতে দেয়। সম্ভবত আপনি যা খুঁজছেন ম্যান পৃষ্ঠার শেষে তালিকাভুক্ত একটি উদাহরণ:
git archive --format=tar --prefix=git-1.4.0/ v1.4.0 | gzip >git-1.4.0.tar.gz
সহজ উত্তর: অ্যাড --exclude-vcs। এটি সমস্ত সংস্করণ নিয়ন্ত্রণ সিস্টেম ডিরেক্টরি বাদ দেয়
ব্যক্তিগতভাবে আমি ব্যবহার করি
tar --exclude-vcs -zcvf foo.tar.gz ./FOLDER_NAME
সুতরাং আপনাকে যা করতে হবে তা হ'ল --exclude-vcsকমান্ডের শেষে যুক্ত করুন ।
tar --exclude-vcs -zcvf foo.tar.gz ./FOLDER_NAME
আপনি Git দ্বারা ট্র্যাক ফাইল, কিন্তু না Git সংগ্রহস্থলের নিজেই বা কোন উত্পন্ন বা অন্যথায় untracked ফাইল অন্তর্ভুক্ত করা সংরক্ষণাগার চান, তাহলে ব্যবহারgit archive ।
আপনি যদি বিশেষত .gitলিনাক্স বা ফ্রিবিএসডি বা ওএসএক্স বা সিগউইনের অধীনে অন্য সমস্ত কিছু বাদ দিতে বা অন্তর্ভুক্ত করতে চান তবে একটি ডিরেক্টরি বাদ দেওয়ার জন্য টারের একটি সহজ বিকল্প রয়েছে:
tar -c --exclude .git -f - foo | gzip >foo.tgz
জিএনইউ টার (যেমন লিনাক্স বা সাইগউইনের অধীনে) দিয়ে আপনি এটি সংক্ষিপ্ত করতে পারেন tar czf foo.tgz --exclude .git foo।
সংরক্ষণাগারগুলি তৈরির পসিক্স উপায় pax।
pax -w -t -s '!.*/\.git$!!' -s '!.*/\.git/.*!!' foo | gzip >foo.tgz
gitকোনো ব্যবস্থা যেখানে উপর প্রনয়ন tarপাওয়া যাচ্ছে না? :-)
tarকোন হয়েছে --excludeযেমন OpenBSD যেমন বিকল্প, (যা বোঝা যাচ্ছে যে নেতারা প্যাক্স এর সদৃশ sবিকল্প, কিন্তু যে একটি সাধারণ আলকাতরা কমান্ড সিনট্যাক্স এক্সটেনশন নয়)।
ধন্যবাদ একটি উত্তর আমি আমার প্রশ্নগুলির একটির পেয়েছিলাম আমি অন্য সমাধান মূর্ত আউট। সুতরাং সম্পূর্ণতার জন্য, এখানে একটি সমাধান তৈরির ব্যবহার রয়েছে find:
find . -path './.git' -prune -o -print |
tar -czvf ../archive.tgz --no-recursion -T -
এবং আপনি যদি সম্ভাব্য .gitফোল্ডারগুলি (সাব) + ফোল্ডারের ভিতরে রাখতে চান তবে :
find . -path '*/.git' -prune -o -print |
tar -czvf ../archive.tgz --no-recursion -T -
পরেও এর মাধ্যমে অর্জন করা যায়:
find . -type d -name '.git' -prune -o -print |
tar -czvf ../archive.tgz --no-recursion -T -
আপনি যদি অন্যান্য ফিল্টারিং কৌশলগুলি ব্যবহার করতে পারেন তবে findউদাহরণস্বরূপ পরিবর্তনের তারিখ, অনুমতি,…
(তাই প্রায়ই সুগঠিত ফাইলের নাম অধিকৃত হয় হিসাবে, অন্যথায় আপনি ব্যবহার নাল বিভাজক যা অর্থ করতে পারেন যেমন বাইট প্রয়োজন -print0জন্য findএবং --nullজন্য tarযদি সমর্থিত।)