मुझे यकीन नहीं है कि यह कैसे हुआ, लेकिन किसी भी तरह से निर्देशिकाओं का एक पूरी तरह से खाली पदानुक्रम मेरे भंडार में समाप्त हो गया है:सीवीएस से खाली निर्देशिका निकालें?
com/
com/companyname/
com/companyname/blah/
com/sun/
com/sun/java/
com/sun/java/jax_rpc_ri/
मुझे लगता है कि क्या हुआ था कि इन निर्देशिकाओं में उनमें फाइलें थीं, लेकिन फिर डेवलपर को एहसास हुआ कि उसे पहले स्थान पर जांच नहीं करनी चाहिए क्योंकि ये निर्माण प्रक्रिया के उप-उत्पाद हैं, इसलिए उन्होंने फ़ाइलों को हटा दिया लेकिन किसी भी तरह रिक्त निर्देशिका को प्राचीन अवशेष के रूप में भंडार में छोड़ दिया गया है।
मैं इसे सीवीएस से कैसे हटा सकता हूं? Google पर खोजने के लिए मुझे लगता है कि एकमात्र परिणाम कहता है कि रिक्त निर्देशिका को हटाने की आवश्यकता नहीं होनी चाहिए क्योंकि सीवीएस उन्हें पहले स्थान पर नहीं रखेगा, और -P
(prune) विकल्प cvs update
को हटा देना चाहिए उन्हें कार्यशील निर्देशिका से - जो शून्य की सहायता है यदि आपके पास वास्तव में आपके भंडार में खाली निर्देशिका है।
एक cvs remove
और cvs commit
इस स्थिति का ख्याल नहीं रखता है:
$ cvs remove -Rf com
cvs remove: Removing com
cvs remove: Removing com/companyname
cvs remove: Removing com/companyname/blah
cvs remove: Removing com/sun
cvs remove: Removing com/sun/java
cvs remove: Removing com/sun/java/jax_rpc_ri
$ cvs commit com
cvs commit: Examining com
cvs commit: Examining com/companyname
cvs commit: Examining com/companyname/blah
cvs commit: Examining com/sun
cvs commit: Examining com/sun/java
cvs commit: Examining com/sun/java/jax_rpc_ri
$ ls -l com
total 24
drwxrwxr-x 2 matt matt 4096 Oct 15 14:38 CVS
drwxrwxr-x 9 matt matt 4096 Oct 15 14:38 companyname
drwxrwxr-x 4 matt matt 4096 Oct 15 14:38 sun
यह अभी भी है!
क्या एसवीएन में यह अजीब व्यवहार भी है?
चेतावनी! वास्तविक, भौतिक, भंडार में जाना जरूरी है क्योंकि एक बार सीवीएस एक निर्देशिका खो देता है, यह इसे फिर से वापस नहीं ले सकता है। सीवीएस उन फाइलों को स्टोर करता है जिन्हें 'अटिक' नामक विशेष फ़ोल्डरों में मिटा दिया गया है। यदि आप 'Attic' मिटाते हैं तो उन फ़ाइलों को हमेशा के लिए खो दिया जाता है। –
ऐसा कुछ करने से पहले हमेशा दो बार सोचें, लेकिन मुझे कोई समस्या नहीं दिख रही है: 'ssh cvsserver:/cvsroot 'tar cvf com.tar com'; 'एसपीपी cvsserver: /cvsroot/com.tar .'; 'सीवीएस com.tar' जोड़ें; 'सीवीएस सीआई com.tar'; 'सीवीएस आरएम-एफ com.tar'; 'ssh cvsserver:/cvsroot 'rm -rf com.tar com'' – minopret