2012-09-06 18 views
34

के साथ एक perforce क्लाइंट को कैसे हटाएं मेरे पास perforce में वर्कस्पेस है जिसमें मैंने कुछ फ़ाइलों को हटाने के लिए चिह्नित किया है। अब मैं उस वर्कस्पेस को मजबूती से हटाना चाहता हूं।लंबित चेंजलिस्ट

लेकिन मैं व्यवस्थापक अधिकार नहीं है। इसे कैसे प्राप्त किया जा सकता है?

उत्तर

42

अपनी सभी खुली फ़ाइलों को देखने के लिए p4 opened चलाएं और उन्हें वापस करने के लिए p4 revert चलाएं।

फिर अपने सभी लंबित चेंजलिस्ट देखने के लिए p4 changes -c your-client-name -s pending चलाएं। के बाद से पहले चरण में आप अपने सभी खुली फ़ाइलों को वापस लाया गया है, इन changelists सभी खाली हो जाएगा। भागो p4 change -d change-number प्रत्येक खाली लंबित परिवर्तन सूची से हटाने के लिए।

फिर आप अपने ग्राहक को हटाने के लिए p4 client -d चला सकते हैं।

+4

को पूर्ववत करने और एक लंबित परिवर्तन सूची को हटाने के लिए, मैं इस क्रम पसंद करते हैं: 'p4 परिवर्तन -u joe' अपना बकाया changelists सूची; 'p4 revert -c 12345 // ... 'मेरे लंबित चेंजलिस्ट 12345 (उदाहरण के लिए) में सभी फ़ाइलों को वापस करने के लिए; अब-खाली चेंजलिस्ट को हटाने के लिए 'p4 change -d 12345'। HTH। – Jeffro

+0

@ जेफ्रो आपका समाधान, 'पी 4 रिवर्ट-सीएलएन // ...' खोला फाइलों को एक-एक करके वापस करने से मेरा समय बचाता है। – VicX

41

मेनू आइटमों के मनमाने ढंग से अनुक्रम के माध्यम से, यह पी 4 वी में केवल 11 क्लिक क्यों है।

  1. सही परिवर्तन सूची पर क्लिक करें
  2. हटाया फ़ाइलें हटाएँ
  3. 'हाँ'
  4. सही परिवर्तन सूची
  5. पर क्लिक करें सभी नौकरियों निकालें
  6. सही
  7. रिवर्ट फ़ाइलों परिवर्तन सूची पर क्लिक करें
  8. 'वापसी'
  9. सही परिवर्तन सूची पर क्लिक करें
  10. लंबित परिवर्तन सूची हटाएं
  11. 'हाँ'

के प्रयोज्य स्कूल के लिए लाज़िमी प्रेषित करने दें।

9

यहाँ मैं अपनी डिफ़ॉल्ट परिवर्तन सेट है, जो था फ़ाइलों का एक बहुत संपादन के लिए बाहर की जाँच की खाली करने के लिए किया था:

p4 opened | sed 's/#.*$//g' | xargs -iF p4 revert F 

यह कट जाएगा फ़ाइल नाम p4 opened और पाइप द्वारा उत्पादित से टिप्पणी हिस्सा फ़ाइल नाम p4 revert पर। उसके बाद मैं लंबित कुछ भी नहीं था और p4 changes -c my-client-name -s pending कुछ भी नहीं अर्जित करता है। यदि आपके पास एक बड़ा परिवर्तन सेट है तो इसमें कुछ समय लगेगा।

+0

इसे प्यार करें .. धन्यवाद आदमी! –

+0

यहां 'xargs' की आवश्यकता नहीं है (और विशेष रूप से '-i' विकल्प की आवश्यकता नहीं है, जो कि लिनक्स पर भी अप्राप्य और बहिष्कृत है)। इसके बजाय 'p4 -x -' का उपयोग करें (देखें 'पी 4 सहायता उपयोग')। साथ ही, जब आपके पास एक बड़ा परिवर्तन सेट है, तो प्रतीक्षा से बचने के लिए, '-k' विकल्प 'p4 revert'' का उपयोग करें। –

7

यहाँ एक लाज़िमी ग्राहक को हटाने के लिए एक स्क्रिप्ट प्रक्रिया है। देखभाल के साथ प्रयोग करें: यह आपके सभी काम क्लाइंट पर प्रगति पर हटा देता है!

  1. इस क्लाइंट पर सभी बदली गई फ़ाइलों को वापस लाएं।

    p4 -c $CLIENT revert -k //... 
    

    नोट -k विकल्प है, जो "फाइल के निशान के रूप में ग्राहक कार्यक्षेत्र में फ़ाइलों को बदले बिना सर्वर मेटाडाटा में वापस लाया गया" का उपयोग। जब से हम बाद में ग्राहक को नष्ट करने के लिए जा रहे हैं, हम ग्राहक कार्यक्षेत्र अपडेट करने के बारे परवाह नहीं है। यदि आपके पास कई फाइलें खुली हैं तो यह चीजों को गति देता है।

  2. क्लाइंट से जुड़े लंबित परिवर्तनों से सभी शेल्व की गई फ़ाइलों को हटाएं।

    p4 changes -s shelved -c $CLIENT | cut -d' ' -f2 | 
    while read CHANGE; do p4 shelve -c $CHANGE -d //...; done 
    

    यदि आप कभी भी p4 shelve का उपयोग नहीं करते हैं तो आप इस चरण को छोड़ सकते हैं।

  3. सभी लंबित ग्राहक के साथ जुड़े परिवर्तन अब खाली हैं। उन्हें हटाओ।

    p4 changes -s pending -c $CLIENT | cut -d' ' -f2 | p4 -b 1 -x - change -d 
    
  4. अब ग्राहक से जुड़े कोई लंबित परिवर्तन नहीं हैं। ग्राहक को हटा दें।

    p4 client -d $CLIENT 
    

(यह प्रक्रिया बहुत आसान होना चाहिए! विशेष रूप से, वहाँ कोई अच्छा कारण है कि हम ग्राहक को हटाने से पहले एक ग्राहक के साथ जुड़े हटाया फ़ाइलों को हटाने के लिए है लगता है। तुम अपने आप को इस के साथ संघर्ष कर पाते हैं , लाज़िमी समर्थन से संपर्क करते हैं और बताते हैं कि यह सरल बनाया जा।)

+0

मैंने किसी अन्य होस्ट (कंप्यूटर स्विच करने के बाद) पर बदलावों को ढंक दिया था। चरण 2 करने में सक्षम होने के लिए, मुझे वर्कस्पेस का मेजबान मेरे वर्तमान में बदलना पड़ा। – Pascal

+0

सहायता से पता चलता है कि आप विसंगति के बावजूद हटाने को मजबूर करने के लिए '-f' विकल्प का उपयोग कर सकते हैं। (आपको "व्यवस्थापक" अनुमति की आवश्यकता होगी।) –

+0

प्रश्न स्पष्ट रूप से यह बता रहा था कि कोई व्यवस्थापक अधिकार उपलब्ध नहीं है। मुझे लगता है कि उन लोगों के लिए यह मामला है जो पेशेवर काम करते हैं (= के लिए भुगतान किया जा रहा है)। – Pascal

5

एक p4 ग्राहक (जो changelists & अन्य समस्याओं) है को हटाने के लिए इस स्क्रिप्ट p4-delete-client बुलाया लिखा।
यह निम्नलिखित सुविधाएं होती हैं:

  • स्वचालित रूप से changelists को हटा देता है (लंबित reverts & हटाता हटाया)
  • फिक्स होस्ट नाम (एक ग्राहक पर बनाया गया था से भिन्न हो)
  • ग्राहक बातें बताता है, तो
  • बंद कर दिया
  • ग्राहक
  • संबद्ध फ़ाइलों को हटा देता हटाता (विन्यस्त किया जा सकता तर्क से नहीं)

ध्यान दें कि स्क्रिप्ट repo में अन्य लिपियों पर निर्भर करता है।

2

उन चरणों को आज़माएं:

  1. परिवर्तन सूची पर क्लिक करें 1.Right

  2. चुनें 'बदलें स्वामित्व'

  3. कार्यक्षेत्र बॉक्स में पहले से ही विद्यमान कार्यक्षेत्र चुनें और ठीक क्लिक करें

  4. सही परिवर्तन सूची पर क्लिक करें और हटा सकते हैं और ठीक से चुनें।
0

यह सिर्फ डिफ़ॉल्ट परिवर्तन सूची को पुन: सेट P4V में मेरे लिए काम किया:

  1. सही डिफ़ॉल्ट परिवर्तन सूची पर क्लिक करें और "संपादित करें विचाराधीन परिवर्तनसूची 'डिफ़ॉल्ट'"

  2. क्लिक करें नीचे दाईं ओर बटन "क्रमांकित चेंजलिस्ट के रूप में सहेजें"

  3. नए चेंजलिस्ट पर राइट क्लिक करें और "चेंजलिस्ट XXX हटाएं" चुनें

आप जो कुछ भी करने की ज़रूरत है, उसके लिए फ़ाइलों को वापस करने के लिए आप नए चेंजलिस्ट पर भी राइट क्लिक कर सकते हैं, जो डिफ़ॉल्ट परिवर्तनीय पर विकल्प के रूप में उपलब्ध नहीं है।

1

परिवर्तन सूची को हटाए जाने से पहले सभी फ़ाइलों को वापस करने की आवश्यकता है। p4v के माध्यम से

दो चरणों (संस्करण 2013.4):

  1. रिवर्ट सभी फ़ाइलों।

    Right click the pending changelist, and then choose "Revert Files"

  2. परिवर्तन सूची हटाएं।

    Right click the changelist, and then choose "Delete Pending Changelist 'XXXXXX'"

संबंधित मुद्दे