2015-02-05 7 views
6

उम्मीद किसी को इस के साथ मदद कर सकते हैं के साथ काम करने ... पुराना हैएंड्रॉयड स्टूडियो SVN 1.8 इस ग्राहक भी काम कर प्रति

मैं SmartSVN डाउनलोड किया है और उस में एक काम की नकल (एंड्रॉयड परियोजना) खोला। इसने मुझे कामकाजी प्रति को 1.8 में अपग्रेड करने के लिए कहा।

इससे मुझे svn क्लाइंट का उपयोग करते समय कोई समस्या नहीं आती है। हालांकि मुझे अपने कमांड लाइन एसवीएन क्लाइंट को अपग्रेड करने की आवश्यकता थी (ओएसएक्स योसेमेट चलाना)।

अब जब मैं कमांड लाइन पर svn --version टाइप करता हूं तो यह संस्करण 1.8 पर इंगित कर रहा है ... बोनस!

हालांकि, एंड्रॉइड स्टूडियो में, जब मैं इकट्ठा करता हूं प्रोडक्शन रिलीज, मेरे पास एक मंच है जो svn जानकारी चलाता है और संशोधन संख्या को बढ़ाता है।

इस कोड

def getSvnRevision() { 
    new ByteArrayOutputStream().withStream { os -> 
     def result = exec { 
      executable = 'svn' 
      args = ['info'] 
      standardOutput = os 
     } 
     def outputAsString = os.toString() 
     def matchLastChangedRev = outputAsString =~ /Last Changed Rev: (\d+)/ 
     return "${matchLastChangedRev[0][1]}" 
    } 
} 

यह अब और रिपोर्ट नहीं चलता है,

SVN: E155021: यह ग्राहक xxx पर काम कर प्रति के साथ काम करने के लिए

संपादित मैं भी वरीयताओं में पथ में संशोधन किया है बहुत पुराना है -> संस्करण नियंत्रण -> सबवर्सन जो कहा जाता है 'कमांड लाइन क्लाइंट का उपयोग करें 'सही पथ में svn फ़ाइल को इंगित करने के लिए।

मैंने एंड्रॉइड स्टूडियो में कैश को भी अमान्य कर दिया है यह देखने के लिए कि क्या इससे मदद मिली है, अभी भी कोई भाग्य नहीं है।

उत्तर

0
  1. अपना एसवीएन संस्करण अपडेट करने का प्रयास करें - एसवीएन का नवीनतम संस्करण डाउनलोड करें और इसे इंस्टॉल करें। विकल्पों में, इस नए संस्करण की बिन निर्देशिका (या जहां भी svn निष्पादन योग्य है) के लिए एसवीएन पथ सेट करें। इस मुद्दे को हल करना चाहिए।

  2. यदि हल नहीं किया गया है, तो "इवेंट लॉग" या "टर्मिनल विंडो" देखें। आप "svn संस्करण विसंगति" जैसे कुछ देखते हैं - अभी ठीक करें। अभी ठीक पर क्लिक करें। यह या तो समस्या को ठीक करेगा या यह बाएं हाथ की ओर पैनल खोल देगा, जिसमें परियोजना सेटिंग्स को अपग्रेड करने के लिए लिंक होगा।

+1

प्रश्न अद्यतन। – Stephen

8

मैक में एंड्रॉइड स्टूडियो का डिफ़ॉल्ट एसवीएन है, जो /usr/bin/svn पर स्थित है। अब तक, यह अभी भी संस्करण 1.7 है, लेकिन अधिकांश एसवीएन क्लाइंट (जैसे स्मार्टएसवीएन) 1.8 का उपयोग करते हैं जो /usr/local/bin/svn पर स्थित है।

अपने एंड्रॉइड स्टूडियो के लिए ठीक करने के लिए, आप Preferences -> Version Control -> Subversion से बदल सकते हैं और पथ /usr/local/bin/svn सेट कर सकते हैं।

यह सुनिश्चित करने के लिए कि आपकी कमांड लाइन द्वारा कौन सा एसवीएन चुना गया है, बस which svn टाइप करें, यह svn कमांड का पूरा पथ दिखाएगा। आपको वहां बदलना चाहिए।

इस सहायता की आशा करें।

अद्यतन 04/19/2016

मैं साझा स्क्रीनशॉट: Path in Android Studio

+0

यह मेरे लिए समाधान था! मैंने देखा कि टर्मिनल में svn का उपयोग करते समय सब कुछ ठीक हो गया, लेकिन अभी भी एंड्रॉइड स्टूडियो मुद्दों को हल नहीं कर सका। ऊपर वर्णित वरीयताओं में इसे बदलने के बाद, सबकुछ सुचारू हो गया। – Michael90

+0

बीटीडब्ल्यू: यह हो सकता है कि आपको पूर्ण पथ पर 'कमांड लाइन क्लाइंट का उपयोग करें' को बदलने की आवश्यकता हो। – Michael90

+0

** ** पथ सेट ** से आपका क्या मतलब है? संस्करण नियंत्रण विंडो में कोई पथ सेटिंग नहीं है। –

13

बाद खोजों के घंटे मैं अंत में एक समाधान मैक OSX के लिए (मैं Yosemite मिल गया है, लेकिन मुझे लगता है कि मिल गया है ओएसएक्स के अन्य संस्करणों के लिए वही)।

यह सब इस लिंक में विस्तार से बताया है: http://andowebsit.es/blog/noteslog.com/post/how-to-upgrade-subversion-on-osx/

संपादित करें: यहाँ समाधान मामले में लिंक की समय सीमा समाप्त

सबसे पहले, आपको लगता है कि SVN ग्राहक के स्थापित संस्करण 1.8 का उपयोग कर रहा है सुनिश्चित करने के लिए है svn --version। परिणाम इस के समान होना चाहिए:

SVN --version
SVN, संस्करण 1.8.13 (r1667537)
x86_64-सेब के darwin14.3.0

पर जून 5 2015, 19:21:21 संकलित

यदि आपका svn संस्करण 1.8 नहीं है, तो ब्रू का उपयोग उपवर्तन के नए संस्करण को स्थापित करने के लिए करें।

फिर आदेश SVN का सही पथ प्राप्त करने के लिए निष्पादन योग्य आप जो आदेश का उपयोग करने के लिए है:

जो SVN
/usr/bin/SVN
/usr/स्थानीय -एक/bin/SVN

अंत में एंड्रॉयड स्टूडियो के लिए जाना पसंद ->संस्करण नियंत्रण ->सबवर्सन और में /usr/local/bin/svn स्ट्रिंग डालें कमांड लाइन क्लाइंट विकल्प का उपयोग करें।

+2

लिंक केवल उत्तरों को निराश कर दिया गया है क्योंकि लिंक – Zharf

+1

को समाप्त कर सकते हैं क्षमा करें, मैंने अपना जवाब संपादित कर लिया है – Keridano

0

एंड्रॉइडस्टूडियो अपने आंतरिक एसवीएन क्लाइंट का उपयोग करें।

मेरे लिए यह हुआ (विंडोज़ पर) जब मैंने अपने svn क्लाइंट (TortoiseSVN) का एक नया संस्करण स्थापित किया।

आप किसी नए संस्करण में अपने काम प्रतिलिपि को अपडेट नहीं करना चाहते हैं, तो आप AndroidStudio यह आंतरिक SVN ग्राहक है, जो फ़ाइल में किया जा सकता है उपयोग करने के लिए करना है> सेटिंग> संस्करण नियंत्रण> unticking द्वारा सबवर्सन 'का चेकबॉक्स कमांड लाइन क्लाइंट' विकल्प का उपयोग करें।

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