क्या हम बिना किसी नेटवर्क एक्सेस के स्थानीय कंप्यूटर पर svn सर्वर सेट कर सकते हैं?


25

मैं अपने कंप्यूटर पर बिना नेटवर्क एक्सेस के SVN रिपॉजिटरी स्थापित करना चाहता हूं। मैं बिना किसी सहयोगी के एक कोड पर काम कर रहा हूं, इसलिए मैं नहीं चाहता कि यह सार्वजनिक रूप से उपलब्ध हो।

मैं इस पोस्ट को पढ़ता हूं , लेकिन यह ऑनलाइन एसवीएन रिपॉजिटरी सेवाओं का उपयोग करने का सुझाव देता है जो मुफ्त रिपॉजिटरी देते हैं। उस स्थिति में, मेरा कोड सार्वजनिक रूप से उपलब्ध होगा (जैसा कि मुफ्त योजनाओं की शर्तों में शामिल है)।

तो मैं सोच रहा था कि क्या मैं अपने विंडोज एक्सपी मशीन पर एक स्थानीय सर्वर सेट कर सकता हूं जो केवल तब भी एक्सेस करता है जब मेरे पास कोई इंटरनेट कनेक्शन नहीं है?


15
मैं दृढ़ता से आपके द्वारा वर्णित वर्कफ़्लो के लिए svn जैसी कुछ चीज़ों का उपयोग करने की जोरदार सलाह
दूंगा

7
आप निश्चित रूप से स्थानीय रूप से svn को स्थापित कर सकते हैं और इसका उपयोग कर सकते हैं। इससे कोई समस्या नहीं है। Visualsvn.com/server/download
एलेक्स

8
या मर्क्यूरियल; "hg init" उस निर्देशिका में एक रिपॉजिटरी बनाता है जिसमें आप हैं ... इससे बहुत आसान नहीं हो सकता है?
पर्पल

8
मुझे लगता है कि डीवीसीएस का सुझाव देने के लिए प्रश्न में कुछ भी आवश्यक नहीं है। प्रस्तुत किए गए परिदृश्य के लिए तोड़फोड़ सही है। ऐसा करने के लिए कोई तकनीकी कारण नहीं होने पर विकल्पों के लिए सिफारिशों के साथ हमारे उत्तरों को धुंधला न करें।
रिचर्डएम

3
@ रीचर्ड: यदि सेटअप करना आसान है और भविष्य में अधिक प्रूफ देना है तो दूसरे उपाय का सुझाव देना गलत नहीं है। यदि ओपी एक दिन अन्य लोगों के साथ सहयोग करना चाहता है, तो डीवीसीएस कई अन्य लाभ प्रदान करता है।
मार्को-फिसेट

जवाबों:


31

एक स्थानीय सर्वर सेट करने का सबसे आसान तरीका svnerve का उपयोग करना है :

तोड़फोड़ में Svnerve - एक हल्का स्टैंड-अलोन सर्वर शामिल है जो एक साधारण टीसीपी / आईपी कनेक्शन पर कस्टम प्रोटोकॉल का उपयोग करता है। यह छोटे प्रतिष्ठानों के लिए आदर्श है, या जहां एक पूर्ण विकसित अपाचे सर्वर का उपयोग नहीं किया जा सकता है।

आप वास्तव में एक तोड़फोड़ सर्वर की जरूरत नहीं है , अगर आप सब करना चाहते हैं स्थानीय स्तर पर भंडार का उपयोग है, क्योंकि आप एक फ़ाइल URL के माध्यम से एक तोड़फोड़ भंडार तक पहुँच सकते हैं, जैसा कि इस उत्तर में वर्णित है :

आप फ़ाइल का उपयोग करके रिपॉजिटरी तक पहुंच सकते हैं: // प्रोटोकॉल ताकि आपको केवल कछुआ एसवीएन स्थापित की आवश्यकता होगी और कुछ नहीं। FAQ में यह प्रश्न देखें: क्या बिना सर्वर के TortoiseSVN का उपयोग करना संभव है?

यहाँ तक कि आपके पास USB डिवाइस में रिपॉजिटरी भी हो सकती है ताकि आप स्रोत को अपने साथ ले जा सकें और अन्य कंप्यूटरों में काम कर सकें।

यदि आप TortoiseSVN का उपयोग कर रहे हैं , तो आप TortoiseSVN के साथ रिपोजिटरी बनाने पर निर्देश पा सकते हैं :

  1. विंडो एक्सप्लोरर खोलें

  2. एक नया फ़ोल्डर बनाएं और इसे नाम दें जैसे SVNRepository

  3. नए बनाए गए फ़ोल्डर पर राइट क्लिक करें और TortoiseSVN → चयन करें यहां रिपोजिटरी बनाएं ...।

इस पृष्ठ पर तुरंत ऊपर यह भी बताया गया है कि कमांड लाइन से रिपॉजिटरी कैसे बनाई जाती है


यह कहने के बाद, मैं आपको सलाह दूंगा कि यद्यपि आप एक विकल्प के रूप में मर्क्यूरियल या गिट को देखें svn। यदि आप TortoiseSvn से परिचित हैं तो आपको TortoiseHg और TortoiseGit एक आसान संक्रमण मिल जाएगा , साथ ही यह आपको बाद में यदि आप की जरूरत है एक वितरित तरीके से काम करने के लिए लचीलापन देता है। उदाहरण के लिए अतीत में मैंने hgबिना नेटवर्क एक्सेस के मशीनों के बीच रिपॉजिटरी ट्रांसफर करने के लिए मेमोरी स्टिक का इस्तेमाल किया है , और जब आप इस तरह से काम करते हैं तो आपको मोलभाव करने में मुफ्त बैकअप मिलता है।


क्या शानदार जवाब है!
स्टीव

9

सरलतम (और सबसे तेज़) सर्वर, जिसे आप स्थानीय रिपॉजिटरी के साथ काम करने के लिए उपयोग कर सकते हैं, जिसे हर svn-client में एम्बेड किया गया है । यह किसी भी रिपॉजिटरी और रिपॉजिटरी की किसी भी राशि तक पहुंचने के लिए सर्वर है , जो प्रोटोकॉल फ़ाइल का उपयोग करके स्थानीय फाइल सिस्टम पर मौजूद है: ///। यह किसी भी प्राधिकरण या प्रमाणीकरण के तरीके प्रदान नहीं करता है, नियंत्रण के तहत भंडार के लिए केवल पूर्ण असीमित पहुंच प्रदान करता है, लेकिन, दूसरी तरफ से, यह प्रति सीसीएस-सिस्टम की सभी विशेषताओं का उपयोग करने और अनुमति देता है।

इस सर्वर का उपयोग करने के लिए, आपके पास किसी भी स्थान पर खाली निर्देशिका में सीएलआई-कमांड svnadmin है जो संबंधित उपकमांड और मापदंडों के साथ है (मैं याद नहीं कर सकता, क्या सीएलआई-क्लाइंट बंडल में प्रशासनिक कार्यक्रम हैं या नहीं और नहीं कर सकते हैं इसे जांचें - मैंने CLI svn-client, केवल TortoiseSVN स्थापित नहीं किया है, जिनके संस्करण 1.7 में इंस्टॉलर में ये प्रोग्राम हैं) - मुझे उम्मीद है, आप इसे ढूंढ पाएंगे।

svnadmin helpहमें सभी उपलब्ध उप-क्षेत्र दिखाएं, अब हम उप-क्षेत्र में रुचि रखते हैं create

svnadmin help create हमारे लिए आवश्यक सभी विवरण प्रदान करें

create: usage: svnadmin create REPOS_PATH

Create a new, empty repository at REPOS_PATH.

Valid options:
...

पहली रेपो के लिए प्रारंभिक बिंदु पर हम सभी फाइन-ट्यून विकल्पों को अनदेखा कर सकते हैं और केवल मुख्य रूप को याद रख सकते हैं svnadmin create REPOS_PATH, वहां REPOS_PATH खाली निर्देशिका के लिए निरपेक्ष या सापेक्ष पथ है, रेपो के लिए योजना बनाई गई है। क्योंकि क्रॉस-प्लेटफ़ॉर्म एप्लिकेशन के लिए ज्यादातर समय साधारण विंडोज-लोग भ्रमित हो सकते हैं, जो पथ (मेटा) में उपयोग करने के लिए नोटेशन (फॉरवर्ड या बैकस्लैश), सबसे सुरक्षित तरीका cdस्थान है, जहां से हमारा डायर लंबे रास्ते के बिना दिखाई देता है - भविष्य के रेपो-निर्देशिका या निर्देशिका के माता-पिता। पहले रेपो के लिए योजना बनाईz:\Main svnadmin create

Z:
cd \Main

और, आखिर में,

svnadmin create .

परिणामस्वरूप हमें निर्देशिका में खाली रिपॉजिटरी मिलती है, जो सामग्री-संकेतक के रूप में विशेष आइकन के साथ विंडोज एक्सप्लोरर में दिखाई देती है

RepoFolder

अब, हर बार जब इस रिपॉजिटरी की आवश्यकता होती है, हम सामान्य एसवीएन-कमांड का उपयोग करते हैं, वहां URL-part या पैरामीटर जैसा लगता हैfile:///Z:/Main

c:\>svn ls file:///Z:/Main
branches/
tags/
trunk/

(मैंने रेपो में मानक रिपोजिटरी ट्री जोड़ा)।

आइए इस अजीब URL को अलग करें:

  • file:///, किसी भी URL के लिए, एक्सेस-प्रोटोकॉल का अर्थ है, हमारे मामले में प्रोटोकॉल विशेष है, और इसमें तीन नहीं, दो स्लैश हैं
  • Z:/Main रेपो और ड्राइव के अंदर पथ के साथ रेपो के लिए पूर्ण पथ है, वहां सभी विंडोज-बैकस्लैश को "क्लासिक" फॉरवर्ड-स्लैश द्वारा प्रतिस्थापित किया गया है

किसी भी अन्य बिंदु से इस रिपॉजिटरी में विशेष तोड़फोड़-सर्वर के साथ "बिग ब्रदर्स" से कोई मतभेद नहीं है

फ़ाइल के लिए RepoBrower: /// repo


1
@ आलसी बेजर ओपी ने स्पष्ट रूप से पूछा कि एक svn सर्वर कैसे स्थापित किया जाए। आपने उसे किसी भी सर्वर का उपयोग करने से बचने के लिए कहा था। यह प्रश्न का उत्तर देने से बचा जाता है, जैसा कि कहा गया है।
वैकल्पिक

5
@mathepic - वास्तव में ओपी पूछता है कि एसवीएन रिपॉजिटरी कैसे सेट करें सर्वर नहीं - बहुत बड़ा अंतर।
मर्फ़

5

एक उत्तर देने की कोशिश करें जो बारीकियों के बजाय सामान्य समाधानों की सिफारिश करता है।

सबसे पहले हाँ, आप एक स्वसंपूर्ण कंप्यूटर पर सबवर्सन का उपयोग कर सकते हैं - आप सर्वर को स्थानीय रूप से स्थापित कर सकते हैं या आप फ़ाइल के साथ काम कर सकते हैं: //


लेकिन जब तक कोई बहुत अच्छा कारण नहीं है कि आपको तोड़फोड़ का उपयोग क्यों करना है, तो मैं सुझाव दूंगा कि यह स्थानीय संस्करण नियंत्रण की समस्या का सबसे अच्छा समाधान नहीं है - कम से कम नहीं क्योंकि यह उन चीजों में से एक को विफल करता है जिन्हें मैं आवश्यक मानता हूं या सुनिश्चित करता हूं कि आप स्रोत कोड कम से कम दो स्थानों पर है (हाँ, यहां तक ​​कि व्यक्तिगत सामान के लिए भी)। इसलिए मैं एक वितरित संस्करण नियंत्रण प्रणाली (DVCS) के उपयोग का सुझाव दूंगा।

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

डीवीसीएस के अन्य फायदे भी हैं।

जैसा कि मैंने पहले ही नोट किया है, मुझे नहीं लगता कि आपके पास वास्तव में एक उचित वीसीएस समाधान है। आपका कोड कम से कम दो मशीनों पर है (विशेष रूप से दो अलग-अलग हार्ड डिस्क और आदर्श रूप से एक से अधिक स्थानों में - हालांकि क्लोनिंग और धक्का देने के लिए यूएसबी स्टिक या "क्लाउड" स्टोरेज (स्काईड्राइव, ड्रॉपबॉक्स, एट अल) एक और तरीका है जिसे काम करना चाहिए)।

किस संदर्भ में DVCS - मैं मर्क्यूरियल (Hg) और Git को देखूंगा और वेरीसिटी को भी । मैं Mercurial का उपयोग करता हूं क्योंकि इसकी अभी भी खिड़कियों पर अच्छे ...

यदि आप होस्ट की गई सेवाओं की शर्तों को स्वीकार करते हैं, तो मैं वास्तव में सहमत हूं कि गितुब की सराहना करने के लिए एक बहुत कुछ है - लेकिन बिटबकेट और फोगबुग / किल्न के बारे में बहुत सारी अच्छी बातें भी हैं ... और शायद यह बहुत सारी अन्य सेवाओं का सच है जिसे मैंने सूचीबद्ध नहीं किया है (उदाहरण http://beanstalkapp.com/ जो आज से पहले ट्विटर पर मेरे पास जाने में उल्लिखित था)


2

तोड़फोड़ के लिए सर्वर की आवश्यकता नहीं होती है। यह एक केंद्रीकृत रिपॉजिटरी का उपयोग करता है, लेकिन इस रिपॉजिटरी को 'फ़ाइल' एक्सेस विधि के माध्यम से एक्सेस किया जा सकता है, जिसका अर्थ है, आपको केवल उस फाइल सिस्टम तक पहुंच की आवश्यकता है जिसे रिपॉजिटरी को स्टोर किया गया है। इसे स्थापित करने का सबसे आसान तरीका यह होगा कि आप अपने HDD पर कहीं एक फोल्डर बनाएं, उस पर TortoiseSVN (या एक समान टूल), और 'रिपॉजिटरी यहाँ बनाएं' बिंदु। वहां से, आप अपने कोड को रिपॉजिटरी में लाने के लिए जो भी आवश्यक हो, कर सकते हैं।

हालांकि, लंबे समय में, आप शायद वितरित एससीएम का उपयोग करना बेहतर समझते हैं, सबसे अच्छे उम्मीदवार जो बेहतर होते हैं (अधिक शक्तिशाली, सीखने की अवस्था वक्र, * निक्स पर सबसे अच्छा काम करता है) और व्यापारिक (थोड़ा कम शक्तिशाली, सीखने में आसान, समान रूप से काम करता है खिड़कियों और * निक्स पर अच्छी तरह से)। इनके साथ, आपकी वर्किंग कॉपी में संपूर्ण रिपॉजिटरी होती है, और आप अपनी इच्छानुसार कई क्लोन (रिमोट या लोकल) बना सकते हैं। आप स्थानीय रूप से शुरू कर सकते हैं, और यदि आप भंडार को बाह्य रूप से होस्ट करने का निर्णय लेते हैं, तो आप बस अपने मौजूदा स्थानीय भंडार को बाहरी स्थान पर क्लोन कर सकते हैं, और आप किसी भी समय दोनों दिशाओं में सिंक्रनाइज़ कर सकते हैं। बेहतर अभी तक, क्योंकि आपके प्रत्येक क्लोन में संपूर्ण परियोजना इतिहास शामिल है, एससीएम एक बैकअप सिस्टम के रूप में दोगुना हो जाता है। तोड़फोड़ के साथ, यदि आपका सर्वर मर जाता है और आपने इसे वापस नहीं लिया है, तो आपका इतिहास समाप्त हो जाएगा - गिट के साथ,

http://hginit.com/ में एक शानदार ट्यूटोरियल है, जो मर्क्यूरियल के साथ शुरू हो रहा है।


1

कर रहे हैं काफी कुछ SVN होस्टिंग कंपनियों है कि एक या दो डेवलपर्स के लिए एक नि: शुल्क खाता पेशकश करते हैं और आवश्यकता नहीं है कि अपने कोड में सार्वजनिक कर दी। $ 0 शुल्क के लिए लिंक किए गए चार्ट की जाँच करें, OSS आवश्यक = NO। मैं उन नौ प्रदाताओं को गिनता हूं जो अभी उन मानदंडों को पूरा करते हैं।

जब आप निश्चित रूप से अपने स्वयं के भंडार को बहुत आसानी से होस्ट कर सकते हैं, तो कुछ लाभ हैं जो एक प्रदाता का उपयोग करके आते हैं:

  • आप बिना किसी अतिरिक्त सेटअप के अपने कोड को कहीं से भी एक्सेस कर सकते हैं।

  • अपने कोड को ऑफ-साइट रखने से आप हार्ड डिस्क क्रैश, फायर आदि से बचाते हैं।

  • कम प्रशासनिक ओवरहेड।


मैं देख रहा हूँ उचित अवधारणा पर ओपी पक्ष - वह SVN चाहते हैं, और यह चाहते स्थानीय स्तर पर (अंतिम शब्द - सबसे महत्वपूर्ण)। आकस्मिक उपयोग के मामले। आपने अलग-अलग उपयोग के मामले पर जवाब दिया , जिसे "उत्तर नहीं" माना जा सकता है - पहले शब्दों से अपना पाठ पुनः पढ़ें, कृपया! मैंने आपके और अन्य उत्तरों को "उत्तर नहीं" के रूप में चिह्नित किया, जबकि औपचारिक रूप से वे उत्तर नहीं हैं । HTH
आलसी बेजर

ओपी के पिछले हिस्से को फिर से पढ़ें: "अगर मैं अपनी विंडोज़ एक्सपी मशीन पर एक स्थानीय सर्वर स्थापित कर सकता हूं, जो कि मेरे पास केवल तब भी पहुंचता है जब मेरे पास कोई इंटरनेट कनेक्शन नहीं है?" - यह सवाल है , सादे अंग्रेजी पाठ में। इस प्रश्न के उत्तर की आवश्यकता है। क्या आपका "जवाब" किसी भी तरह से प्रश्न के साथ संबंधित है ?! कम से कम खुद के प्रति ईमानदार रहें , गलतियों को पहचानते हुए
आलसी बेजर

मैं लाइनों के बीच नहीं पढ़ता (और इसे एक से अधिक बार दिखाया गया है ), मैंने बिल्कुल वही पढ़ा जो लेखक के विचार के बिना पूछे गए प्रश्न पर लिखा और उत्तर दिया गया था , जो वह कहना चाहता था लेकिन कहना नहीं चाहता था । इस विषय में अधिकांश उत्तरों के विपरीत, प्रश्न का उत्तर नहीं है
आलसी बेजर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.