आप लिनक्स निष्पादन योग्य फ़ाइलों को .gitignore में एक स्पष्ट एक्सटेंशन दिए बिना और उन्हें किसी विशिष्ट या/bin निर्देशिका में रखे बिना कैसे जोड़ते हैं? अधिकांश को सी फ़ाइल के समान नाम दिया जाता है, जिससे उन्हें ".c" एक्सटेंशन के बिना संकलित किया गया था।लिनक्स निष्पादन योग्य फ़ाइलों को .gitignore में कैसे जोड़ें?
उत्तर
मैं उन्हें प्रोजेक्ट में स्पष्ट रूप से रखूंगा .gitignore। यह सुरुचिपूर्ण नहीं है, लेकिन मुझे लगता है कि आपकी परियोजना में नहीं है जो उनमें से कई हैं।
इस सवाल पर मैंने ठोकर खाई है क्योंकि उनमें से कई * हैं *। –
वर्तमान dir से सभी निष्पादन योग्य फ़ाइलों से अपने .gitignore
एक में जाने के खिलाफ मतभेद पैदा करने का एक तरीका है:
find . -perm /111 -type f | sed 's#^./##' | sort | diff -u .gitignore -
इस जिसका अर्थ है आप फाइल करने के लिए किसी भी मैन्युअल परिवर्तन खोना नहीं है एक diff उत्पन्न करता है। यह मानता है कि आपकी .gitignore
फ़ाइल पहले से ही क्रमबद्ध है। Sed part केवल उत्पन्न ./
को स्ट्रिप्स करता है जो उत्पन्न करता है।
केवल निष्पादन योग्य फ़ाइलों को अनदेखा करने का कोई स्वचालित तरीका नहीं है, इसलिए आपको हमेशा फ़ाइल को प्रबंधित करना होगा।
क्या आप सभी को अनदेखा कर सकते हैं, लेकिन स्रोत कोड फाइलें?
उदाहरण के लिए:
*
!*.c
!Makefile
मैं अपने आप .gitignore
को ELF निष्पादनयोग्य को जोड़ने के लिए एक पटकथा लिखी।
git-ignore-elf
:
#!/bin/sh
set -eu
cd "$(git rev-parse --show-toplevel)"
file=.gitignore
new=$file.new.$$
(
if [ -e "$file" ]; then
cat "$file"
fi
find . -name .git -prune -o -type f ! -name '*.o' ! -name '*.so' \
-print0 | xargs -0 file | grep ': *ELF ' | sed 's/:.*//' |
sed 's,^./,,'
) | perl -ne 'print if !$already{$_}++' >"$new"
mv "$new" "$file"
विशेषताएं:
- (! एक misfeature हो सकता है)
- ELF फ़ाइलें, को छोड़कर ओ और .so फ़ाइलों पर ध्यान नहीं देता शीर्ष-स्तरीय फ़ोल्डर से देख शुरू होता है जिसे एक सामान्य नियम
- के साथ अनदेखा किया जा सकता है .gitignore में मौजूदा प्रविष्टियों को डुप्लिकेट किए बिना
यह एकल स्क्रिप्ट संस्करण यहाँ है: http://sam.nipl.net/b/git-ignore-elf-1
यहाँ एक और मॉड्यूलर संस्करण है, जो अन्य लिपियों पर निर्भर करता है (Git-जड़, लगता है-योगिनी, uniqo) एक ही जगह से: http://sam.nipl.net/b/git-ignore-elf
यहां पर पाइथन और फ़ाइल (1) का उपयोग कर एक समान उत्तर है: http://stackoverflow.com/a/19749478/218294 –
अधिकांश डेवलपर्स में आमतौर पर build
निर्देशिका होती है जो उनकी परियोजना में वास्तविक निर्माण प्रक्रिया होती है। तो, सभी निष्पादन योग्य, .o
, .so
, .a
इत्यादि हैं और यह निर्माण निर्देशिका .gitignore
में जोड़ दी गई है।
- 1. # * # ग्लोब को .gitignore में जोड़ें?
- 2. लिनक्स आरपीएथ में निष्पादन योग्य स्थान को एन्कोड कैसे करें?
- 3. लिनक्स कर्नेल मॉड्यूल में निष्पादन योग्य पृष्ठ आवंटित कैसे करें?
- 4. एक निष्पादन योग्य पैकेज में फ़ाइलों को लपेटें
- 5. निष्पादन योग्य
- 6. निष्पादन योग्य
- 7. निष्पादन योग्य
- 8. निष्पादन योग्य
- 9. युद्ध फ़ाइल में निष्पादन योग्य
- 10. निष्पादन योग्य
- 11. सभी PHP फ़ाइलों को निष्पादन योग्य बनाना (पुनरावर्ती)
- 12. लिनक्स में टर्मिनल में निष्पादन योग्य कमांड को कैसे लूप करें?
- 13. मैं .gitignore में निर्दिष्ट फ़ाइलों को कैसे दबाऊं?
- 14. लिनक्स में निष्पादन योग्य ढेर का उदाहरण (i386 आर्किटेक्चर)
- 15. निष्पादन योग्य
- 16. आकार और निष्पादन योग्य
- 17. प्लेलिस्ट में एकाधिक फ़ाइलों को कैसे जोड़ें
- 18. निष्पादन योग्य
- 19. .gitignore फ़ाइलों को अनदेखा नहीं करता
- 20. पायथन: निष्पादन योग्य ज़िप फ़ाइलों में डेटा फ़ाइलों को शामिल किया जा सकता है?
- 21. निष्पादन योग्य
- 22. निष्पादन योग्य
- 23. निष्पादन योग्य
- 24. निष्पादन योग्य
- 25. एक लिनक्स निष्पादन जीसीसी
- 26. गैर निष्पादन निष्पादन योग्य फ़ाइल
- 27. निष्पादन योग्य
- 28. निष्पादन योग्य जार
- 29. निष्पादन योग्य
- 30. मैं लिनक्स में पायथन का उपयोग करके निष्पादन योग्य फ़ाइल की खोज कैसे करूं?
यह http://stackoverflow.com/questions/5711120/gitignore-without-binary-files का एक डुप्लिकेट है जो उन्हें मर्ज कर सकता है। –
नहीं, निष्पादन योग्य फ़ाइलों और बाइनरी फ़ाइलों के बीच एक अंतर है। मैं निष्पादन योग्य स्क्रिप्ट और बाइनरी फ़ाइलों दोनों को अनदेखा करने की आवश्यकता को देखता हूं। मुझे नहीं लगता कि यह सवाल एक डुप्लिकेट है। – Alexander