सोर्स कोड कंट्रोल सिस्टम: Difference between revisions
No edit summary |
No edit summary |
||
Line 19: | Line 19: | ||
| website = {{URL|http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sccs.html| The Open Group Base Specifications Issue 7, IEEE Std 1003.1-2008, 2016 Edition}} | | website = {{URL|http://pubs.opengroup.org/onlinepubs/9699919799/utilities/sccs.html| The Open Group Base Specifications Issue 7, IEEE Std 1003.1-2008, 2016 Edition}} | ||
}} | }} | ||
[[सोर्स कोड]] कंट्रोल सिस्टम (एससीसीएस) [[संस्करण नियंत्रण]] है जिसे सॉफ्टवेयर के विकास के | '''[[सोर्स कोड]] कंट्रोल सिस्टम (एससीसीएस)''' [[संस्करण नियंत्रण|संस्करण नियंत्रण सिस्टम]] है जिसे सॉफ्टवेयर के विकास के समय सोर्स कोड और अन्य टेक्स्ट फ़ाइलों में परिवर्तनों को ट्रैक करने के लिए डिज़ाइन किया गया है। यह उपयोगकर्ता को मूल सोर्स कोड के किसी भी पिछले संस्करण और संग्रहीत परिवर्तनों को पुनः प्राप्त करने की अनुमति देता है। इसे मूल रूप से 1972 के अंत में [[बेल लैब्स]] में [[मार्क रोशकिंड]] द्वारा ओएस/360 पर चलने वाले आईबीएम सिस्टम/370 कंप्यूटर के लिए विकसित किया गया था।<ref name = "r1">{{Citation |last=Rochkind |first=Marc J. |url=http://basepath.com/aup/talks/SCCS-Slideshow.pdf |title=The Source Code Control System |periodical=IEEE Transactions on Software Engineering |volume=SE-1 |issue=4 |date=December 1975 |pages=364–370 |doi=10.1109/tse.1975.6312866|s2cid=10006076 }} | ||
</ref> | </ref> एससीसीएस की विशिष्ट विशेषता एससीसीएसआईडी स्ट्रिंग है जो सोर्स कोड में एम्बेडेड है, और प्रत्येक संशोधन के लिए एससीसीएस द्वारा स्वचालित रूप से अपडेट की जाती है।<ref name="Oracle">{{Cite web|url=http://docs.oracle.com/cd/E19504-01/802-5880/6i9k05dhp/index.html|title=Chapter 5 SCCS Source Code Control System|last=Oracle|website=Programming Utilities Guide}}</ref> यह उदाहरण C (प्रोग्रामिंग भाषा) में इसके उपयोग को दर्शाता है: | ||
एससीसीएस की विशिष्ट विशेषता एससीसीएसआईडी स्ट्रिंग है जो | |||
<syntaxhighlight lang="text"> | <syntaxhighlight lang="text"> | ||
static char sccsid[] = "@(#)ls.c 8.1 (Berkeley) 6/11/93"; | static char sccsid[] = "@(#)ls.c 8.1 (Berkeley) 6/11/93"; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
इस [[स्ट्रिंग (कंप्यूटर विज्ञान)]] में फ़ाइल का नाम, दिनांक और टिप्पणी भी हो सकती है। संकलन के | इस [[स्ट्रिंग (कंप्यूटर विज्ञान)]] में फ़ाइल का नाम, दिनांक और टिप्पणी भी हो सकती है। संकलन के पश्चात्, क्रम की तलाश करके स्ट्रिंग को बाइनरी और ऑब्जेक्ट फ़ाइलों में पाया जा सकता है <code>@(#)</code> और इसका उपयोग यह निर्धारित करने के लिए किया जा सकता है कि संकलन के समय कौन सी सोर्स कोड फ़ाइलों का उपयोग किया गया था। <code>what</code> संस्करण स्ट्रिंग्स के लिए इस खोज को स्वचालित करने के लिए e> कमांड उपलब्ध है।<ref>{{cite web |url=https://pubs.opengroup.org/onlinepubs/9699919799/utilities/what.html |title=क्या|author=<!--Not stated--> |date=n.d. |publisher=IEEE and The Open Group |access-date=November 28, 2022}}</ref> | ||
==इतिहास== | ==इतिहास== | ||
1972 में, मार्क रोचकाइंड ने विभिन्न प्रकार के कार्यों के साथ ओएस/360 मल्टीप्रोग्रामिंग चलाने वाले आईबीएम सिस्टम/370 कंप्यूटर के लिए बेल लैब्स में एसएनओबीओएल में एससीसीएस विकसित | 1972 में, मार्क रोचकाइंड ने विभिन्न प्रकार के कार्यों के साथ ओएस/360 मल्टीप्रोग्रामिंग चलाने वाले आईबीएम सिस्टम/370 कंप्यूटर के लिए बेल लैब्स में एसएनओबीओएल में एससीसीएस विकसित किया था। <ref name = "r1"/> उन्होंने [[UNIX|यूनिक्स]] के अनुसार उपयोग के लिए C प्रोग्रामिंग भाषा में एससीसीएस को फिर से लिखा था, फिर 1973 में [[PDP-11|पीडीपी-11]] पर चलाया गया था। | ||
पहला सार्वजनिक रूप से | पहला सार्वजनिक रूप से प्रारंभ किया गया संस्करण 18 फरवरी 1977 से एससीसीएस संस्करण 4 था।<ref>http://sccs.sourceforge.net/PWB.html AT&T Announcement for SCCSv4</ref> यह [[ऑपरेटिंग सिस्टम]] के पीडब्लूबी/यूनिक्स|प्रोग्रामर वर्कबेंच (पीडब्लूबी) संस्करण के साथ उपलब्ध था। एससीसीएस का रिलीज़ 4 पहला संस्करण था जिसमें टेक्स्ट-आधारित इतिहास फ़ाइल स्वरूप का उपयोग किया गया था, पहले के संस्करणों में बाइनरी इतिहास फ़ाइल स्वरूपों का उपयोग किया गया था। रिलीज़ 4 अब मार्क रोशकाइंड द्वारा लिखा या अनुरक्षित नहीं किया गया था। इसके पश्चात्, एससीसीएस को AT&T के वाणिज्यिक यूनिक्स सिस्टम III और यूनिक्स सिस्टम V वितरण में सम्मिलित किया गया था। इसे [[ बर्कले सॉफ्टवेयर वितरण |बर्कले सॉफ्टवेयर वितरण]] के पूर्वज यूनिक्स/32V के साथ लाइसेंस प्राप्त नहीं था।<ref>SCCS [http://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/man/cat1/what.1 what(1)] manpage from 4BSD, 1980, on the website of [http://www.tuhs.org/ The Unix Heritage Society] {{webarchive|url=https://web.archive.org/web/20050831153956/http://www.tuhs.org/ |date=2005-08-31 }}.</ref> एससीसीएस कमांड सेट अब सिंगल यूनिक्स विशिष्टता का भाग है। | ||
इसके पश्चात् संस्करण नियंत्रण सिस्टम्स, विशेष रूप से संशोधन नियंत्रण सिस्टम और पश्चात् में [[समवर्ती संस्करण प्रणाली|समवर्ती संस्करण सिस्टम]], को अधिक व्यापक रूप से अपनाए जाने तक एससीसीएस यूनिक्स के लिए प्रमुख संस्करण नियंत्रण सिस्टम थी। आज, इन प्रारंभिक संस्करण नियंत्रण सिस्टम्स को सामान्यतः अप्रचलित माना जाता है, विशेष रूप से [[खुला स्रोत सॉफ्टवेयर|ओपन सोर्स सॉफ्टवेयर]] में, जिसने बड़े मापदंड पर [[वितरित संस्करण नियंत्रण]] सिस्टम्स को अपनाया है। चूँकि, एससीसीएस फ़ाइल स्वरूप का उपयोग अभी भी [[BitKeeper|बिटकीपर]] और [[TeamWare|टीमवेयर]] सहित कुछ नए संस्करण नियंत्रण प्रोग्रामो द्वारा आंतरिक रूप से किया जाता है। इस प्रकार उत्तरार्द्ध एससीसीएस का अग्रभाग है। [http://sablime.alcatel-lucent.com/ सब्लिमे] को एससीसीएस के संशोधित संस्करण से विकसित किया गया है <ref>Estublier, Jacky, David Leblang, [[André van der Hoek]], Reidar Conradi, Geoffrey Clemm, Walter Tichy, and Darcy Wiborg-Weber. “Impact of software engineering research on the practice of software configuration management.” ACM Transactions on Software Engineering and Methodology (TOSEM) 14 (October 2005): 383–430.</ref> किन्तु इतिहास फ़ाइल स्वरूप का उपयोग करता है जो एससीसीएस के साथ असंगत है। एससीसीएस फ़ाइल स्वरूप स्टोरेज तकनीक का उपयोग करता है जिसे [[इंटरलीव्ड डेल्टा]]स (या वेव) कहा जाता है <ref>{{Citation |last=Hudson |first=Greg |url=http://web.mit.edu/ghudson/thoughts/file-versioning |title=Notes on keeping version histories of files |publisher=Unpublished personal notes |date=2002-10-03}}</ref>). इस स्टोरेज तकनीक को अब कई संस्करण नियंत्रण सिस्टम डेवलपर्स द्वारा उन्नत [[मर्ज (संस्करण नियंत्रण)]] और संस्करणिंग तकनीकों के लिए मूलभूत माना जाता है,<ref>Estublier, Jacky, David Leblang, [[André van der Hoek]], Reidar Conradi, Geoffrey Clemm, Walter Tichy, and Darcy Wiborg-Weber. “Impact of software engineering research on the practice of software configuration management.” ACM Transactions on Software Engineering and Methodology (TOSEM) 14 (October 2005): p.398.</ref> जैसे कि प्रिसिज़ कोडविल (पीसीडीवी) मर्ज किया जाता है। | |||
1999 में [[वर्ष 2000 की समस्या]]ओं को ठीक करने के | 1999 में [[वर्ष 2000 की समस्या]]ओं को ठीक करने के अतिरिक्त, विभिन्न यूनिक्स विक्रेता-विशिष्ट एससीसीएस संस्करणों पर कोई सक्रिय विकास नहीं हुआ है।<ref> | ||
[https://www.gnu.org/software/cssc/ What is SCCS], GNU operating System</ref> | [https://www.gnu.org/software/cssc/ What is SCCS], GNU operating System</ref> 2006 में, [[सन माइक्रोसिस्टम्स]] (आज [[ओरेकल कॉर्पोरेशन]] का भाग) ने सोलारिस को ओपन-सोर्स करने के अपने प्रयासों के भाग के रूप में [[ सामान्य विकास एवं वितरण लाइसेंस |सामान्य विकास एवं वितरण लाइसेंस]] के अनुसार ओपन-सोर्स सॉफ्टवेयर या ओपन-सोर्स के रूप में एससीसीएस का अपना [[सोलारिस (ऑपरेटिंग सिस्टम)]] संस्करण प्रारंभ किया था।<ref>{{cite web|url=http://mail.opensolaris.org/pipermail/opensolaris-announce/2006-December/000364.html |title=SCCS/make source available |date=2006-12-19 |access-date=2011-11-14 |author=Stephen Lau, [[Sun Microsystems]] |url-status=dead |archive-url=https://web.archive.org/web/20120425142501/http://mail.opensolaris.org/pipermail/opensolaris-announce/2006-December/000364.html |archive-date=April 25, 2012 }}</ref> | ||
2006 में, [[सन माइक्रोसिस्टम्स]] (आज [[ओरेकल कॉर्पोरेशन]] का | |||
==पृष्ठभूमि== | ==पृष्ठभूमि== | ||
सोर्स कोड कंट्रोल सिस्टम (एससीसीएस) फ़ाइल और इतिहास परिवर्तनों को नियंत्रित करने के लिए | सोर्स कोड कंट्रोल सिस्टम (एससीसीएस) फ़ाइल और इतिहास परिवर्तनों को नियंत्रित करने के लिए सिस्टम है। सॉफ़्टवेयर सामान्यतः बग्स को ठीक करके, एल्गोरिदम को अनुकूलित करके और अतिरिक्त फ़ंक्शन जोड़कर नए संस्करण में अपग्रेड किया जाता है।<ref>Home Organization Selection {{ProQuest|215925387}}</ref> सॉफ़्टवेयर बदलने से समस्याएँ उत्पन्न होती हैं जिन्हें हल करने के लिए संस्करण नियंत्रण की आवश्यकता होती है।<ref name = "r1"/> | ||
* परिवर्तन कब और कहाँ हुए, इसकी जानकारी प्राप्त करना कठिन है। | *सोर्स कोड बहुत अधिक स्थान लेता है क्योंकि यह प्रत्येक संस्करण में दोहराया जाता है। | ||
* | *परिवर्तन कब और कहाँ हुए, इसकी जानकारी प्राप्त करना कठिन है। | ||
इन समस्याओं को हल करने के लिए | * स्पष्ट संस्करण खोजना जिसमें क्लाइंट-सर्वर मॉडल में समस्याएँ हैं, कठिन है। | ||
एससीसीएस का उपयोग करने वाले दो विशिष्ट कार्यान्वयन हैं: यूनिक्स के | इन समस्याओं को हल करने के लिए एससीसीएस का निर्माण किया गया था। इस प्रकार एटी एंड टी के एससीसीएस में आईबीएम ओएस के लिए पांच प्रमुख संस्करण और यूनिक्स के लिए पांच प्रमुख संस्करण थे<ref>The evolution of a Source Code Control System. Alan L.Glasser, published in sigmetrics, Nov 1978 when SCCS on UNIX was a version 4</ref> एससीसीएस का उपयोग करने वाले दो विशिष्ट कार्यान्वयन हैं: इस प्रकार यूनिक्स के अनुसार पीडीपी 11 और ओएस के अनुसार आईबीएम 370 का उपयोग किया जाता है।<ref name = "r1"/> | ||
== रचना == | == रचना == | ||
एससीसीएस में दो भाग होते हैं: एससीसीएस कमांड और एससीसीएस फ़ाइलें <ref name="एससीसीएस">{{Cite web|url=http://www-h.eng.cam.ac.uk/help/tpl/languages/sccs.html|title=एससीसीएस|website=www-h.eng.cam.ac.uk|access-date=2016-09-12}}</ref> सभी मूलभूत संचालन (उदाहरण के लिए, बनाएं, हटाएं, एडिट करें) एससीसीएस कमांड द्वारा अनुभव किए जा सकते हैं।<ref name="SCCS"/> एससीसीएस फ़ाइलों में अद्वितीय प्रारूप उपसर्ग होता है <code>s.</code>, जिसे एससीसीएस कमांड द्वारा नियंत्रित किया जाता है।<ref name="Oracle"/> | |||
== एससीसीएस फ़ाइलें == | == एससीसीएस फ़ाइलें == | ||
एससीसीएस फ़ाइल में तीन भाग होते हैं:<ref name=":0">{{Cite web|url=https://www.ibm.com/support/knowledgecenter/ssw_aix_53/com.ibm.aix.genprogc/doc/genprogc/sccs.htm|title=General Programming Concepts: Writing and Debugging Programs|last=IBM|website=IBM Knowledge Center|date=7 June 2018 }}</ref> | |||
* | |||
* | * डेल्टा तालिका | ||
*फ्लैग तक पहुंच और ट्रैकिंग | |||
* टेक्स्ट का मुख्य भाग | |||
=== डेल्टा तालिका === | === डेल्टा तालिका === | ||
एससीसीएस में, डेल्टा एससीसीएस फ़ाइल में एकल संशोधन है। डेल्टा को डेल्टा तालिका में संग्रहीत किया जाता है, इसलिए प्रत्येक एससीसीएस फ़ाइल में परिवर्तनों का अपना | एससीसीएस में, डेल्टा एससीसीएस फ़ाइल में एकल संशोधन है। डेल्टा को डेल्टा तालिका में संग्रहीत किया जाता है, इसलिए प्रत्येक एससीसीएस फ़ाइल में परिवर्तनों का अपना अभिलेख होता है।<ref name=":0" /> | ||
=== एससीसीएस फाइलों में | === एससीसीएस फाइलों में फ्लैग का नियंत्रण और ट्रैकिंग === | ||
प्रत्येक एससीसीएस फ़ाइल के प्रत्येक ऑपरेशन को | प्रत्येक एससीसीएस फ़ाइल के प्रत्येक ऑपरेशन को फ्लैग द्वारा ट्रैक किया जाता है। उनके कार्य इस प्रकार हैं:<ref name=":0" /> | ||
* प्रत्येक | ** प्रत्येक एससीसीएस फ़ाइल के संपादन के लिए अनुमतियाँ सेट करना। | ||
*प्रत्येक एससीसीएस फ़ाइल की प्रत्येक रिलीज़ को नियंत्रित करें। | |||
* प्रत्येक एससीसीएस फ़ाइल के [[सहयोगात्मक संपादन]] की अनुमति। | * प्रत्येक एससीसीएस फ़ाइल के [[सहयोगात्मक संपादन]] की अनुमति। | ||
* प्रत्येक एससीसीएस फ़ाइल के पारस्परिक-संदर्भित परिवर्तन। | * प्रत्येक एससीसीएस फ़ाइल के पारस्परिक-संदर्भित परिवर्तन। | ||
=== शरीर === | === शरीर === | ||
एससीसीएस विभिन्न डेल्टाओं में | एससीसीएस विभिन्न डेल्टाओं में प्रयुक्त सम्मिलन और विलोपन का ट्रैक रखने के लिए तीन प्रकार के नियंत्रण अभिलेख का उपयोग करता है। वे सम्मिलन नियंत्रण अभिलेख, विलोपन नियंत्रण अभिलेख और अंत नियंत्रण अभिलेख हैं। जब भी कोई उपयोगकर्ता टेक्स्ट का कुछ भाग बदलता है, जिससे परिवर्तन के आसपास नियंत्रण अभिलेख डाला जाता है। इस प्रकार नियंत्रण अभिलेख मूल टेक्स्ट अभिलेख के साथ मुख्य भाग में संग्रहीत होते हैं।<ref name = "r1"/> | ||
==एससीसीएस | ==एससीसीएस मूलभूत कमांड== | ||
एससीसीएस मैक्रो इनवोकेशन के रूप में कमांड का सेट प्रदान करता है जो सरल सिंटैक्स के साथ | एससीसीएस मैक्रो इनवोकेशन के रूप में कमांड का सेट प्रदान करता है जो सरल सिंटैक्स के साथ सोर्स कोड प्रबंधन कार्यों को निष्पादित या आरंभ करता है, जैसे कि बनाना, प्राप्त करना, एडिट करना, पीआरटी का उपयोग किया जाता है।<ref>[http://sccs.sourceforge.net/man/sccs.me.html An Introduction to the Source Code Control System ] Eric Allman, Project Ingres, University of California at Berkeley</ref><ref>[http://docs.oracle.com/cd/E19504-01/802-5880/6i9k05dhp/index.html Source Code Control System] Programming Utilities Guide</ref> यह प्रबंधन के अनुसार फ़ाइलों के संशोधन इतिहास तक पहुंच भी प्रदान करता है। ये कमांड ड्राइवर प्रोग्राम एससीसीएस में तर्क क्रिया के रूप में कार्यान्वित किए जाते हैं। | ||
=== | === क्रिएट === | ||
एससीसीएस कमांड क्रिएट नई इतिहास फ़ाइल बनाने के लिए सोर्स फ़ाइल के टेक्स्ट का उपयोग करता है। उदाहरण के लिए: | |||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
$ sccs create program.c | $ sccs create program.c | ||
Line 85: | Line 86: | ||
आउटपुट नाम, संस्करण और पंक्तियाँ हैं। | आउटपुट नाम, संस्करण और पंक्तियाँ हैं। | ||
कमांड मैक्रो है जो नई इतिहास फ़ाइल बनाने के लिए व्यवस्थापक तक विस्तारित होता है और उसके | कमांड मैक्रो है जो नई इतिहास फ़ाइल बनाने के लिए व्यवस्थापक तक विस्तारित होता है और उसके पश्चात् फ़ाइल को पुनः प्राप्त करता है। | ||
=== | === एडिट === | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
$ sccs edit program.c | $ sccs edit program.c | ||
Line 94: | Line 95: | ||
87 lines | 87 lines | ||
</syntaxhighlight> | </syntaxhighlight> | ||
किसी विशिष्ट फ़ाइल को | किसी विशिष्ट फ़ाइल को एडिट करें. | ||
कमांड मैक्रो है जो -ई प्राप्त करने के लिए विस्तारित होता है। | कमांड मैक्रो है जो -ई प्राप्त करने के लिए विस्तारित होता है। | ||
=== | === डेल्गेट === | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
$ sccs delget program.c | $ sccs delget program.c | ||
Line 111: | Line 112: | ||
नए संस्करण की जांच करें और एससीसीएस से नया संस्करण प्राप्त करें। | नए संस्करण की जांच करें और एससीसीएस से नया संस्करण प्राप्त करें। | ||
कमांड मैक्रो है जो नए संस्करण फ़ाइल की जांच करने के लिए डेल्टा तक विस्तारित होता है और उसके | कमांड मैक्रो है जो नए संस्करण फ़ाइल की जांच करने के लिए डेल्टा तक विस्तारित होता है और उसके पश्चात् फ़ाइल को पुनः प्राप्त करता है। | ||
=== | === गेट === | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
$ sccs get program.c | $ sccs get program.c | ||
Line 125: | Line 126: | ||
$ sccs prt program.c | $ sccs prt program.c | ||
</syntaxhighlight> | </syntaxhighlight> | ||
यह कमांड | यह कमांड सोर्स कोड परिवर्तनों की सूची तैयार करता है। | ||
==कार्यान्वयन== | ==कार्यान्वयन== | ||
=== [[यूनिक्स]] एससीसीएस संस्करण === | === [[यूनिक्स]] एससीसीएस संस्करण === | ||
अधिकांश | अधिकांश यूनिक्स संस्करणों में एससीसीएस का संस्करण सम्मिलित होता है, जो, चूँकि, अब अधिकांशतः सक्रिय रूप से विकसित नहीं होता है।<ref>Koike, Hideki, and Hui-Chu Chu. "VRCS: Integrating version control and module management | ||
using interactive three-dimensional graphics." Visual Languages, 1997. Proceedings. 1997 | using interactive three-dimensional graphics." Visual Languages, 1997. Proceedings. 1997 | ||
Line 137: | Line 138: | ||
=== जोर्ग शिलिंग का कांटा === | === जोर्ग शिलिंग का कांटा === | ||
इस प्रकार {{ill|जोर्ग शिलिंग|डीई}} (जिसने [[ ओपनसोलर |ओपनसोलर]] परियोजना के प्रारंभिक दिनों में एससीसीएस प्रारंभ करने का अनुरोध किया था) <ref>{{cite web|title=os.solaris.opensolaris.rfe - Re: star - msg#00001 - Recent Discussion OSDir.com|url=http://osdir.com/ml/os.solaris.opensolaris.rfe/2006-05/msg00001.html|website=osdir.com|access-date=10 September 2016}}</ref> एससीसीएस का फोर्क (सॉफ्टवेयर विकास) बनाए रखा था <ref name="schily-sccs">[http://sccs.sourceforge.net/ Jörg Schilling's SCCS development website]</ref><ref>{{cite web |url=https://codeberg.org/schilytools/schilytools/src/branch/master/AN-2022-10-16 |title=A collection of tools written or formerly managed by Jörg Schilling. |author=<!--Not stated--> |date=22 October 2022 |website=[[Codeberg]] |access-date=28 November 2022 |quote=development has been picked up by a group of volunteers who would like to keep the project alive and well}}</ref> यह ओपनसोलारिस सोर्स कोड पर आधारित है। इसमें प्रमुख फीचर संवर्द्धन प्राप्त हुए हैं किन्तु नए प्रोजेक्ट मोड का उपयोग करने तक यह मूल एससीसीएस संस्करणों के साथ संगत रहता है।<ref>[http://sccs.sourceforge.net/#compatibility Schily SCCS web site]: "Will the upcoming SCCSv6 stay compatible with POSIX and with historic SCCS implementations?"</ref> | |||
=== [[विरासत परियोजना]] === | === [[विरासत परियोजना|हेयरलूम प्रोजेक्ट]] === | ||
हिरलूम प्रोजेक्ट में ओपनसोलारिस | हिरलूम प्रोजेक्ट में ओपनसोलारिस सोर्स कोड से प्राप्त एससीसीएस का संस्करण सम्मिलित है <ref>{{cite web |url=http://heirloom.sourceforge.net/devtools.html |title=विरासत विकास उपकरण|author=Gunnar Ritter |date=20 June 2010 |access-date=4 November 2011}}</ref> और दिसंबर 2006 और अप्रैल 2007 के बीच बनाए रखा गया था।<ref>http://heirloom.cvs.sourceforge.net/viewvc/heirloom/heirloom-devtools/sccs/ see CVS history</ref> | ||
=== [[जीएनयू]] रूपांतरण उपयोगिता === | === [[जीएनयू]] रूपांतरण उपयोगिता === | ||
जीएनयू एससीसीएस संगत कार्यक्रम प्रदान करता है [https://www.gnu.org/software/cssc/ जीएनयू सीएसएससी] (संगत रूप से | जीएनयू एससीसीएस संगत कार्यक्रम प्रदान करता है [https://www.gnu.org/software/cssc/ जीएनयू सीएसएससी] (संगत रूप से व्यर्थ सोर्स नियंत्रण), जिसका उपयोग कभी-कभी एससीसीएस अभिलेखागार को समवर्ती संस्करण सिस्टम [[ तोड़फोड़ (सॉफ्टवेयर) |सॉफ्टवेयर]] जैसे नए सिस्टम में परिवर्तित करने के लिए किया जाता है );<ref>[http://sccs2svn.berlios.de/ SCCS2SVN conversion utility] {{webarchive|url=https://web.archive.org/web/20091222091016/http://sccs2svn.berlios.de/ |date=2009-12-22 }}, which works with both SCCS and CSSC</ref> यह पूर्ण नहीं है <ref>[https://www.gnu.org/s/cssc/manual/Incomplete.html#Incomplete GNU CSSC list of limitations in its documentation]</ref> एससीसीएस कार्यान्वयन और नई परियोजनाओं में उपयोग के लिए अनुशंसित नहीं है, किन्तु अधिकतर आधुनिक संस्करण नियंत्रण सिस्टम में परिवर्तित करने के लिए है। | ||
=== अन्य संस्करण नियंत्रण सिस्टम्स === | |||
1990 के दशक से, [[संस्करण नियंत्रण सॉफ़्टवेयर की सूची]] विकसित की गई है और लोकप्रिय हो गई है जो बड़ी संख्या में फ़ाइलों के साथ परियोजनाओं के प्रबंधन के लिए डिज़ाइन की गई है और जो बहु-उपयोगकर्ता संचालन, अभिगम नियंत्रण, स्वचालित निर्माण, नेटवर्क समर्थन, रिलीज़ प्रबंधन जैसी उन्नत कार्यक्षमता प्रदान करती है। और वितरित संस्करण नियंत्रण [[बिटकीपर]] और टीमवेयर आंतरिक रूप से एससीसीएस फ़ाइल स्वरूप का उपयोग करते हैं और उन्हें एससीसीएस का उत्तराधिकारी माना जा सकता है।<ref>{{cite web|title=revtool|work=BitKeeper Documentation|url=https://www.bitkeeper.org/man/revtool.html}}</ref><ref>{{cite web|title=सन वर्कशॉप टीमवेयर का परिचय|url=https://docs.oracle.com/cd/E19957-01/806-3573/intro.html|website=docs.oracle.com|access-date=10 September 2016}}</ref> | |||
बीएसडी सिस्टम पर, एससीसीएसआईडी को प्रारंभ और अंत में आरसीएसआईडी से बदल दिया जाता है {{mono|$}}; संबंधित उपकरण है {{mono|ident}}.<ref>{{Man|1|ident|NetBSD}}</ref> यह सिस्टम मूल रूप से रिवीजन कंट्रोल सिस्टम द्वारा उपयोग किया जाता है और चेकआउट पर स्वचालित रूप से जोड़ा जाता है। परिणामी सोर्स कोड संशोधन नियंत्रण पहचानकर्ता [[नेटबीएसडी]] में प्रलेखित हैं <ref>{{cite web|title=src/share/misc/style revision 1.64|url=http://cvsweb.netbsd.org/bsdweb.cgi/src/share/misc/style?rev=1.64&content-type=text/x-cvsweb-markup|publisher=NetBSD CVS repository}}</ref> और फ्रीबीएसडी <ref>{{Man|9|style|FreeBSD}}</ref> अपने स्वयं के कोड बेस के लिए स्टाइल गाइड नेटबीएसडी कस्टम कीवर्ड {{mono|$NetBSD: ...$}} को परिभाषित करता है जबकि फ्रीबीएसडी परिभाषित करता है इस प्रकार {{mono|$FreeBSD: ...$}} और मैक्रो का नाम बदल दिया गया {{mono|__FBSDID}}.था | |||
एसआरसी संस्करण नियंत्रण सिस्टम आंतरिक रूप से एससीसीएस फ़ाइल प्रारूप (या संशोधन नियंत्रण सिस्टम) का भी उपयोग कर सकती है और इसका उद्देश्य केवल एकल-फ़ाइल परियोजनाओं का प्रबंधन करते हुए एससीसीएस के लिए उत्तम उपयोगकर्ता इंटरफ़ेस प्रदान करना है।<ref>{{cite web |url=http://www.catb.org/esr/src/ |title=Resource page for src 1.29 |author=<!--Not stated--> |date=January 21, 2022 |access-date=November 28, 2022 |quote=}}</ref> | |||
==संदर्भ== | ==संदर्भ == | ||
{{Reflist|30em}} | {{Reflist|30em}} | ||
==अग्रिम पठन== | ==अग्रिम पठन== | ||
* [http://sccs.sourceforge.net/sccs_invention.html Essay from Marc Rochkind on how | * [http://sccs.sourceforge.net/sccs_invention.html Essay from Marc Rochkind on how एससीसीएस was invented] | ||
* {{man|1|sccs|SUS}} | * {{man|1|sccs|SUS}} | ||
* {{man|1|sccs|FreeBSD}} | * {{man|1|sccs|FreeBSD}} | ||
Line 169: | Line 172: | ||
==बाहरी संबंध== | ==बाहरी संबंध== | ||
* [https://codeberg.org/schilytools/schilytools Schily's | * [https://codeberg.org/schilytools/schilytools Schily's एससीसीएस on Codeberg] | ||
[[Category: 1972 सॉफ्टवेयर]] [[Category: संस्करण नियंत्रण प्रणाली]] [[Category: मुफ़्त संस्करण नियंत्रण सॉफ़्टवेयर]] [[Category: यूनिक्स अभिलेखागार और संपीड़न-संबंधित उपयोगिताएँ]] [[Category: यूनिक्स SUS2008 उपयोगिताएँ]] [[Category: स्व-होस्टिंग सॉफ़्टवेयर]] [[Category: सीडीडीएल लाइसेंस का उपयोग करने वाला सॉफ्टवेयर]] | [[Category: 1972 सॉफ्टवेयर]] [[Category: संस्करण नियंत्रण प्रणाली]] [[Category: मुफ़्त संस्करण नियंत्रण सॉफ़्टवेयर]] [[Category: यूनिक्स अभिलेखागार और संपीड़न-संबंधित उपयोगिताएँ]] [[Category: यूनिक्स SUS2008 उपयोगिताएँ]] [[Category: स्व-होस्टिंग सॉफ़्टवेयर]] [[Category: सीडीडीएल लाइसेंस का उपयोग करने वाला सॉफ्टवेयर]] | ||
Revision as of 11:44, 20 July 2023
Original author(s) | Marc J. Rochkind |
---|---|
Developer(s) | Bell Labs |
Initial release | 1973discuss] | [
Repository | N/A |
Written in | First version: SNOBOL4 Rewrite: C |
Operating system | OS/360, Unix, Unix-like |
Platform | IBM System/370, PDP-11, IA-32 |
Type | Version control |
License | proprietary licenses, Common Development and Distribution License |
Website | The Open Group Base Specifications Issue 7, IEEE Std 1003.1-2008, 2016 Edition |
सोर्स कोड कंट्रोल सिस्टम (एससीसीएस) संस्करण नियंत्रण सिस्टम है जिसे सॉफ्टवेयर के विकास के समय सोर्स कोड और अन्य टेक्स्ट फ़ाइलों में परिवर्तनों को ट्रैक करने के लिए डिज़ाइन किया गया है। यह उपयोगकर्ता को मूल सोर्स कोड के किसी भी पिछले संस्करण और संग्रहीत परिवर्तनों को पुनः प्राप्त करने की अनुमति देता है। इसे मूल रूप से 1972 के अंत में बेल लैब्स में मार्क रोशकिंड द्वारा ओएस/360 पर चलने वाले आईबीएम सिस्टम/370 कंप्यूटर के लिए विकसित किया गया था।[1] एससीसीएस की विशिष्ट विशेषता एससीसीएसआईडी स्ट्रिंग है जो सोर्स कोड में एम्बेडेड है, और प्रत्येक संशोधन के लिए एससीसीएस द्वारा स्वचालित रूप से अपडेट की जाती है।[2] यह उदाहरण C (प्रोग्रामिंग भाषा) में इसके उपयोग को दर्शाता है:
static char sccsid[] = "@(#)ls.c 8.1 (Berkeley) 6/11/93";
इस स्ट्रिंग (कंप्यूटर विज्ञान) में फ़ाइल का नाम, दिनांक और टिप्पणी भी हो सकती है। संकलन के पश्चात्, क्रम की तलाश करके स्ट्रिंग को बाइनरी और ऑब्जेक्ट फ़ाइलों में पाया जा सकता है @(#)
और इसका उपयोग यह निर्धारित करने के लिए किया जा सकता है कि संकलन के समय कौन सी सोर्स कोड फ़ाइलों का उपयोग किया गया था। what
संस्करण स्ट्रिंग्स के लिए इस खोज को स्वचालित करने के लिए e> कमांड उपलब्ध है।[3]
इतिहास
1972 में, मार्क रोचकाइंड ने विभिन्न प्रकार के कार्यों के साथ ओएस/360 मल्टीप्रोग्रामिंग चलाने वाले आईबीएम सिस्टम/370 कंप्यूटर के लिए बेल लैब्स में एसएनओबीओएल में एससीसीएस विकसित किया था। [1] उन्होंने यूनिक्स के अनुसार उपयोग के लिए C प्रोग्रामिंग भाषा में एससीसीएस को फिर से लिखा था, फिर 1973 में पीडीपी-11 पर चलाया गया था।
पहला सार्वजनिक रूप से प्रारंभ किया गया संस्करण 18 फरवरी 1977 से एससीसीएस संस्करण 4 था।[4] यह ऑपरेटिंग सिस्टम के पीडब्लूबी/यूनिक्स|प्रोग्रामर वर्कबेंच (पीडब्लूबी) संस्करण के साथ उपलब्ध था। एससीसीएस का रिलीज़ 4 पहला संस्करण था जिसमें टेक्स्ट-आधारित इतिहास फ़ाइल स्वरूप का उपयोग किया गया था, पहले के संस्करणों में बाइनरी इतिहास फ़ाइल स्वरूपों का उपयोग किया गया था। रिलीज़ 4 अब मार्क रोशकाइंड द्वारा लिखा या अनुरक्षित नहीं किया गया था। इसके पश्चात्, एससीसीएस को AT&T के वाणिज्यिक यूनिक्स सिस्टम III और यूनिक्स सिस्टम V वितरण में सम्मिलित किया गया था। इसे बर्कले सॉफ्टवेयर वितरण के पूर्वज यूनिक्स/32V के साथ लाइसेंस प्राप्त नहीं था।[5] एससीसीएस कमांड सेट अब सिंगल यूनिक्स विशिष्टता का भाग है।
इसके पश्चात् संस्करण नियंत्रण सिस्टम्स, विशेष रूप से संशोधन नियंत्रण सिस्टम और पश्चात् में समवर्ती संस्करण सिस्टम, को अधिक व्यापक रूप से अपनाए जाने तक एससीसीएस यूनिक्स के लिए प्रमुख संस्करण नियंत्रण सिस्टम थी। आज, इन प्रारंभिक संस्करण नियंत्रण सिस्टम्स को सामान्यतः अप्रचलित माना जाता है, विशेष रूप से ओपन सोर्स सॉफ्टवेयर में, जिसने बड़े मापदंड पर वितरित संस्करण नियंत्रण सिस्टम्स को अपनाया है। चूँकि, एससीसीएस फ़ाइल स्वरूप का उपयोग अभी भी बिटकीपर और टीमवेयर सहित कुछ नए संस्करण नियंत्रण प्रोग्रामो द्वारा आंतरिक रूप से किया जाता है। इस प्रकार उत्तरार्द्ध एससीसीएस का अग्रभाग है। सब्लिमे को एससीसीएस के संशोधित संस्करण से विकसित किया गया है [6] किन्तु इतिहास फ़ाइल स्वरूप का उपयोग करता है जो एससीसीएस के साथ असंगत है। एससीसीएस फ़ाइल स्वरूप स्टोरेज तकनीक का उपयोग करता है जिसे इंटरलीव्ड डेल्टास (या वेव) कहा जाता है [7]). इस स्टोरेज तकनीक को अब कई संस्करण नियंत्रण सिस्टम डेवलपर्स द्वारा उन्नत मर्ज (संस्करण नियंत्रण) और संस्करणिंग तकनीकों के लिए मूलभूत माना जाता है,[8] जैसे कि प्रिसिज़ कोडविल (पीसीडीवी) मर्ज किया जाता है।
1999 में वर्ष 2000 की समस्याओं को ठीक करने के अतिरिक्त, विभिन्न यूनिक्स विक्रेता-विशिष्ट एससीसीएस संस्करणों पर कोई सक्रिय विकास नहीं हुआ है।[9] 2006 में, सन माइक्रोसिस्टम्स (आज ओरेकल कॉर्पोरेशन का भाग) ने सोलारिस को ओपन-सोर्स करने के अपने प्रयासों के भाग के रूप में सामान्य विकास एवं वितरण लाइसेंस के अनुसार ओपन-सोर्स सॉफ्टवेयर या ओपन-सोर्स के रूप में एससीसीएस का अपना सोलारिस (ऑपरेटिंग सिस्टम) संस्करण प्रारंभ किया था।[10]
पृष्ठभूमि
सोर्स कोड कंट्रोल सिस्टम (एससीसीएस) फ़ाइल और इतिहास परिवर्तनों को नियंत्रित करने के लिए सिस्टम है। सॉफ़्टवेयर सामान्यतः बग्स को ठीक करके, एल्गोरिदम को अनुकूलित करके और अतिरिक्त फ़ंक्शन जोड़कर नए संस्करण में अपग्रेड किया जाता है।[11] सॉफ़्टवेयर बदलने से समस्याएँ उत्पन्न होती हैं जिन्हें हल करने के लिए संस्करण नियंत्रण की आवश्यकता होती है।[1]
- सोर्स कोड बहुत अधिक स्थान लेता है क्योंकि यह प्रत्येक संस्करण में दोहराया जाता है।
- परिवर्तन कब और कहाँ हुए, इसकी जानकारी प्राप्त करना कठिन है।
- स्पष्ट संस्करण खोजना जिसमें क्लाइंट-सर्वर मॉडल में समस्याएँ हैं, कठिन है।
इन समस्याओं को हल करने के लिए एससीसीएस का निर्माण किया गया था। इस प्रकार एटी एंड टी के एससीसीएस में आईबीएम ओएस के लिए पांच प्रमुख संस्करण और यूनिक्स के लिए पांच प्रमुख संस्करण थे[12] एससीसीएस का उपयोग करने वाले दो विशिष्ट कार्यान्वयन हैं: इस प्रकार यूनिक्स के अनुसार पीडीपी 11 और ओएस के अनुसार आईबीएम 370 का उपयोग किया जाता है।[1]
रचना
एससीसीएस में दो भाग होते हैं: एससीसीएस कमांड और एससीसीएस फ़ाइलें [13] सभी मूलभूत संचालन (उदाहरण के लिए, बनाएं, हटाएं, एडिट करें) एससीसीएस कमांड द्वारा अनुभव किए जा सकते हैं।[14] एससीसीएस फ़ाइलों में अद्वितीय प्रारूप उपसर्ग होता है s.
, जिसे एससीसीएस कमांड द्वारा नियंत्रित किया जाता है।[2]
एससीसीएस फ़ाइलें
एससीसीएस फ़ाइल में तीन भाग होते हैं:[15]
- डेल्टा तालिका
- फ्लैग तक पहुंच और ट्रैकिंग
- टेक्स्ट का मुख्य भाग
डेल्टा तालिका
एससीसीएस में, डेल्टा एससीसीएस फ़ाइल में एकल संशोधन है। डेल्टा को डेल्टा तालिका में संग्रहीत किया जाता है, इसलिए प्रत्येक एससीसीएस फ़ाइल में परिवर्तनों का अपना अभिलेख होता है।[15]
एससीसीएस फाइलों में फ्लैग का नियंत्रण और ट्रैकिंग
प्रत्येक एससीसीएस फ़ाइल के प्रत्येक ऑपरेशन को फ्लैग द्वारा ट्रैक किया जाता है। उनके कार्य इस प्रकार हैं:[15]
- प्रत्येक एससीसीएस फ़ाइल के संपादन के लिए अनुमतियाँ सेट करना।
- प्रत्येक एससीसीएस फ़ाइल की प्रत्येक रिलीज़ को नियंत्रित करें।
- प्रत्येक एससीसीएस फ़ाइल के सहयोगात्मक संपादन की अनुमति।
- प्रत्येक एससीसीएस फ़ाइल के पारस्परिक-संदर्भित परिवर्तन।
शरीर
एससीसीएस विभिन्न डेल्टाओं में प्रयुक्त सम्मिलन और विलोपन का ट्रैक रखने के लिए तीन प्रकार के नियंत्रण अभिलेख का उपयोग करता है। वे सम्मिलन नियंत्रण अभिलेख, विलोपन नियंत्रण अभिलेख और अंत नियंत्रण अभिलेख हैं। जब भी कोई उपयोगकर्ता टेक्स्ट का कुछ भाग बदलता है, जिससे परिवर्तन के आसपास नियंत्रण अभिलेख डाला जाता है। इस प्रकार नियंत्रण अभिलेख मूल टेक्स्ट अभिलेख के साथ मुख्य भाग में संग्रहीत होते हैं।[1]
एससीसीएस मूलभूत कमांड
एससीसीएस मैक्रो इनवोकेशन के रूप में कमांड का सेट प्रदान करता है जो सरल सिंटैक्स के साथ सोर्स कोड प्रबंधन कार्यों को निष्पादित या आरंभ करता है, जैसे कि बनाना, प्राप्त करना, एडिट करना, पीआरटी का उपयोग किया जाता है।[16][17] यह प्रबंधन के अनुसार फ़ाइलों के संशोधन इतिहास तक पहुंच भी प्रदान करता है। ये कमांड ड्राइवर प्रोग्राम एससीसीएस में तर्क क्रिया के रूप में कार्यान्वित किए जाते हैं।
क्रिएट
एससीसीएस कमांड क्रिएट नई इतिहास फ़ाइल बनाने के लिए सोर्स फ़ाइल के टेक्स्ट का उपयोग करता है। उदाहरण के लिए:
$ sccs create program.c
program.c:
1.1
87 lines
आउटपुट नाम, संस्करण और पंक्तियाँ हैं।
कमांड मैक्रो है जो नई इतिहास फ़ाइल बनाने के लिए व्यवस्थापक तक विस्तारित होता है और उसके पश्चात् फ़ाइल को पुनः प्राप्त करता है।
एडिट
$ sccs edit program.c
1.1
new delta 1.2
87 lines
किसी विशिष्ट फ़ाइल को एडिट करें.
कमांड मैक्रो है जो -ई प्राप्त करने के लिए विस्तारित होता है।
डेल्गेट
$ sccs delget program.c
comments? main function enhanced
1.2
10 inserted
0 deleted
87 unchanged
1.2
97 lines
नए संस्करण की जांच करें और एससीसीएस से नया संस्करण प्राप्त करें।
कमांड मैक्रो है जो नए संस्करण फ़ाइल की जांच करने के लिए डेल्टा तक विस्तारित होता है और उसके पश्चात् फ़ाइल को पुनः प्राप्त करता है।
गेट
$ sccs get program.c
1.1
87 lines
आउटपुट संस्करण और पंक्तियाँ हैं जिन्हें आप विशिष्ट फ़ाइल से प्राप्त करना चाहते हैं।
पीआरटी
$ sccs prt program.c
यह कमांड सोर्स कोड परिवर्तनों की सूची तैयार करता है।
कार्यान्वयन
यूनिक्स एससीसीएस संस्करण
अधिकांश यूनिक्स संस्करणों में एससीसीएस का संस्करण सम्मिलित होता है, जो, चूँकि, अब अधिकांशतः सक्रिय रूप से विकसित नहीं होता है।[18]
जोर्ग शिलिंग का कांटा
इस प्रकार जोर्ग शिलिंग (जिसने ओपनसोलर परियोजना के प्रारंभिक दिनों में एससीसीएस प्रारंभ करने का अनुरोध किया था) [19] एससीसीएस का फोर्क (सॉफ्टवेयर विकास) बनाए रखा था [20][21] यह ओपनसोलारिस सोर्स कोड पर आधारित है। इसमें प्रमुख फीचर संवर्द्धन प्राप्त हुए हैं किन्तु नए प्रोजेक्ट मोड का उपयोग करने तक यह मूल एससीसीएस संस्करणों के साथ संगत रहता है।[22]
हेयरलूम प्रोजेक्ट
हिरलूम प्रोजेक्ट में ओपनसोलारिस सोर्स कोड से प्राप्त एससीसीएस का संस्करण सम्मिलित है [23] और दिसंबर 2006 और अप्रैल 2007 के बीच बनाए रखा गया था।[24]
जीएनयू रूपांतरण उपयोगिता
जीएनयू एससीसीएस संगत कार्यक्रम प्रदान करता है जीएनयू सीएसएससी (संगत रूप से व्यर्थ सोर्स नियंत्रण), जिसका उपयोग कभी-कभी एससीसीएस अभिलेखागार को समवर्ती संस्करण सिस्टम सॉफ्टवेयर जैसे नए सिस्टम में परिवर्तित करने के लिए किया जाता है );[25] यह पूर्ण नहीं है [26] एससीसीएस कार्यान्वयन और नई परियोजनाओं में उपयोग के लिए अनुशंसित नहीं है, किन्तु अधिकतर आधुनिक संस्करण नियंत्रण सिस्टम में परिवर्तित करने के लिए है।
अन्य संस्करण नियंत्रण सिस्टम्स
1990 के दशक से, संस्करण नियंत्रण सॉफ़्टवेयर की सूची विकसित की गई है और लोकप्रिय हो गई है जो बड़ी संख्या में फ़ाइलों के साथ परियोजनाओं के प्रबंधन के लिए डिज़ाइन की गई है और जो बहु-उपयोगकर्ता संचालन, अभिगम नियंत्रण, स्वचालित निर्माण, नेटवर्क समर्थन, रिलीज़ प्रबंधन जैसी उन्नत कार्यक्षमता प्रदान करती है। और वितरित संस्करण नियंत्रण बिटकीपर और टीमवेयर आंतरिक रूप से एससीसीएस फ़ाइल स्वरूप का उपयोग करते हैं और उन्हें एससीसीएस का उत्तराधिकारी माना जा सकता है।[27][28]
बीएसडी सिस्टम पर, एससीसीएसआईडी को प्रारंभ और अंत में आरसीएसआईडी से बदल दिया जाता है $; संबंधित उपकरण है ident.[29] यह सिस्टम मूल रूप से रिवीजन कंट्रोल सिस्टम द्वारा उपयोग किया जाता है और चेकआउट पर स्वचालित रूप से जोड़ा जाता है। परिणामी सोर्स कोड संशोधन नियंत्रण पहचानकर्ता नेटबीएसडी में प्रलेखित हैं [30] और फ्रीबीएसडी [31] अपने स्वयं के कोड बेस के लिए स्टाइल गाइड नेटबीएसडी कस्टम कीवर्ड $NetBSD: ...$ को परिभाषित करता है जबकि फ्रीबीएसडी परिभाषित करता है इस प्रकार $FreeBSD: ...$ और मैक्रो का नाम बदल दिया गया __FBSDID.था
एसआरसी संस्करण नियंत्रण सिस्टम आंतरिक रूप से एससीसीएस फ़ाइल प्रारूप (या संशोधन नियंत्रण सिस्टम) का भी उपयोग कर सकती है और इसका उद्देश्य केवल एकल-फ़ाइल परियोजनाओं का प्रबंधन करते हुए एससीसीएस के लिए उत्तम उपयोगकर्ता इंटरफ़ेस प्रदान करना है।[32]
संदर्भ
- ↑ 1.0 1.1 1.2 1.3 1.4 Rochkind, Marc J. (December 1975), "The Source Code Control System" (PDF), IEEE Transactions on Software Engineering, vol. SE-1, no. 4, pp. 364–370, doi:10.1109/tse.1975.6312866, S2CID 10006076
- ↑ 2.0 2.1 Oracle. "Chapter 5 SCCS Source Code Control System". Programming Utilities Guide.
- ↑ "क्या". IEEE and The Open Group. n.d. Retrieved November 28, 2022.
- ↑ http://sccs.sourceforge.net/PWB.html AT&T Announcement for SCCSv4
- ↑ SCCS what(1) manpage from 4BSD, 1980, on the website of The Unix Heritage Society Archived 2005-08-31 at the Wayback Machine.
- ↑ Estublier, Jacky, David Leblang, André van der Hoek, Reidar Conradi, Geoffrey Clemm, Walter Tichy, and Darcy Wiborg-Weber. “Impact of software engineering research on the practice of software configuration management.” ACM Transactions on Software Engineering and Methodology (TOSEM) 14 (October 2005): 383–430.
- ↑ Hudson, Greg (2002-10-03), Notes on keeping version histories of files, Unpublished personal notes
- ↑ Estublier, Jacky, David Leblang, André van der Hoek, Reidar Conradi, Geoffrey Clemm, Walter Tichy, and Darcy Wiborg-Weber. “Impact of software engineering research on the practice of software configuration management.” ACM Transactions on Software Engineering and Methodology (TOSEM) 14 (October 2005): p.398.
- ↑ What is SCCS, GNU operating System
- ↑ Stephen Lau, Sun Microsystems (2006-12-19). "SCCS/make source available". Archived from the original on April 25, 2012. Retrieved 2011-11-14.
- ↑ Home Organization Selection ProQuest 215925387
- ↑ The evolution of a Source Code Control System. Alan L.Glasser, published in sigmetrics, Nov 1978 when SCCS on UNIX was a version 4
- ↑ "एससीसीएस". www-h.eng.cam.ac.uk. Retrieved 2016-09-12.
- ↑ Cite error: Invalid
<ref>
tag; no text was provided for refs namedSCCS
- ↑ 15.0 15.1 15.2 IBM (7 June 2018). "General Programming Concepts: Writing and Debugging Programs". IBM Knowledge Center.
- ↑ An Introduction to the Source Code Control System Eric Allman, Project Ingres, University of California at Berkeley
- ↑ Source Code Control System Programming Utilities Guide
- ↑ Koike, Hideki, and Hui-Chu Chu. "VRCS: Integrating version control and module management using interactive three-dimensional graphics." Visual Languages, 1997. Proceedings. 1997 IEEE Symposium on. IEEE, 1997.
- ↑ "os.solaris.opensolaris.rfe - Re: star - msg#00001 - Recent Discussion OSDir.com". osdir.com. Retrieved 10 September 2016.
- ↑ Jörg Schilling's SCCS development website
- ↑ "A collection of tools written or formerly managed by Jörg Schilling". Codeberg. 22 October 2022. Retrieved 28 November 2022.
development has been picked up by a group of volunteers who would like to keep the project alive and well
- ↑ Schily SCCS web site: "Will the upcoming SCCSv6 stay compatible with POSIX and with historic SCCS implementations?"
- ↑ Gunnar Ritter (20 June 2010). "विरासत विकास उपकरण". Retrieved 4 November 2011.
- ↑ http://heirloom.cvs.sourceforge.net/viewvc/heirloom/heirloom-devtools/sccs/ see CVS history
- ↑ SCCS2SVN conversion utility Archived 2009-12-22 at the Wayback Machine, which works with both SCCS and CSSC
- ↑ GNU CSSC list of limitations in its documentation
- ↑ "revtool". BitKeeper Documentation.
- ↑ "सन वर्कशॉप टीमवेयर का परिचय". docs.oracle.com. Retrieved 10 September 2016.
- ↑ NetBSD General Commands Manual –
- ↑ "src/share/misc/style revision 1.64". NetBSD CVS repository.
- ↑ FreeBSD Kernel Developer's Manual –
- ↑ "Resource page for src 1.29". January 21, 2022. Retrieved November 28, 2022.
अग्रिम पठन
- Essay from Marc Rochkind on how एससीसीएस was invented
- The Single UNIX Specification, Version 4 from The Open Group – Shell and Utilities Reference,
- FreeBSD General Commands Manual –
- Solaris 10 User Commands Reference Manual –
- – AIX 7.3 manual page
- HP-UX 11i User Commands Manual –
- IRIX 6.5 User Commands Manual –