Was ist CVS unter Linux?

青灯夜游
Freigeben: 2022-07-01 15:50:03
Original
3204 Leute haben es durchsucht

Unter Linux lautet der vollständige Name von cvs „Concurrent Version System“, was auf Chinesisch „Code-Versionskontrollsoftware“ bedeutet. Es handelt sich um ein GNU-Softwarepaket, das hauptsächlich für die Quellcode-Wartung in einer Entwicklungsumgebung mit mehreren Personen verwendet wird. CVS kann die Entwicklung und Verwendung jedes Dokuments verwalten, z. B. die Bearbeitung und Änderung gemeinsamer Dateien, nicht nur die Programmierung; die von CVS verwalteten Dateitypen können Text oder Binärdateien sein. Das Client/Server-basierte Verhalten von CVS ermöglicht die Unterstützung mehrerer Benutzer.

Was ist CVS unter Linux?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

cvs unter Linux

CVS (Concurrent Versions System, Code-Versionskontrollsoftware) ist ein GNU-Softwarepaket, das hauptsächlich für die Quellcode-Wartung in einer Entwicklungsumgebung mit mehreren Personen verwendet wird. Eine ähnliche Software zur Codeversionskontrolle ist Subversion. Mehrere Entwickler zeichnen Dateiversionen über ein zentrales Versionskontrollsystem auf, um die Dateisynchronisierung sicherzustellen. Das CVS-Versionskontrollsystem ist ein GNU-Softwarepaket, das hauptsächlich für die Quellcode-Wartung in einer Entwicklungsumgebung mit mehreren Personen verwendet wird. Aufgrund früherer Probleme mit der CVS-Codierung haben die meisten Softwareentwicklungsunternehmen jedoch SVN anstelle von CVS verwendet.

Concurrent bedeutet Parallelität, Zusammenarbeit und Konsistenz. Tatsächlich kann CVS die Entwicklung und Verwendung jedes Dokuments verwalten, beispielsweise die Bearbeitung und Änderung gemeinsam genutzter Dateien, und ist nicht nur auf die Programmierung beschränkt. Die von CVS verwalteten Dateitypen können Text- oder Binärdateien sein.

CVS verwendet die Änderungstabelle Copy-Modify-Merge (Kopieren, Ändern, Zusammenführen), um den gleichzeitigen Zugriff und die Änderung von Dateien zu unterstützen. Es trennt die Speicherung der Quelldateien explizit vom Arbeitsbereich des Benutzers und ermöglicht deren parallelen Betrieb. Das Client/Server-basierte Verhalten von

CVS ermöglicht die Aufnahme mehrerer Benutzer. Diese Funktion macht CVS zur ersten Wahl, wenn Personen an verschiedenen Standorten gleichzeitig an Datendateien (insbesondere dem Quellcode eines Programms) arbeiten.

Arbeitsidee

Errichten Sie eine Quellcodebibliothek auf einem Server, in der Quellprogramme für viele verschiedene Projekte gespeichert werden können. Diese Quellprogramme werden einheitlich vom Quellcode-Repository-Administrator verwaltet. Bevor jeder Benutzer die Quellcodebibliothek verwendet, muss er zunächst die Projektdateien in der Quellcodebibliothek lokal herunterladen. Anschließend kann der Benutzer sie lokal ändern und sie schließlich mithilfe von CVS-Befehlen übermitteln. Die CVS-Quellcodebibliothek wird dann einheitlich die Änderungen verwalten. Auf diese Weise ist es so, als würde nur eine Person die Datei ändern, was nicht nur Konflikte vermeidet, sondern auch die Verfolgung von Dateiänderungen ermöglicht.

CVS steht für Concurrent Versions System, ein transparentes Versionskontrollsystem für Mainstream-Open-Source-Netzwerke. CVS ist für jeden nützlich, vom einzelnen Entwickler bis hin zu großen, verteilten Teams.

Dank der Client/Server-Zugriffsmethode können Entwickler von jedem Internetzugangspunkt aus auf den neuesten Code zugreifen. Der uneingeschränkte Versionsverwaltungs-Checkout-Modus (Checkout: Hinweis 1) vermeidet die üblichen manuellen Konflikte, die durch den exklusiven Checkout-Modus verursacht werden. Seine Client-Tools können auf den meisten Plattformen verwendet werden.

CVS wird in beliebten Open-Source-Projekten wie Mozilla, GIMP, XEmacs, KDE und GNOME usw. verwendet. Wie ist es also?

Man könnte sagen, es ist großartig, aber was kann es für „mich“ bewirken? Zunächst die Grundlagen: Ein Versionskontrollsystem verwaltet einen Verlauf der an einer Reihe von Dateien vorgenommenen Änderungen. Für einen Entwickler bedeutet das, dass er alle Änderungen, die er während der Entwicklung eines Programms vornimmt, nachverfolgen kann. Haben Sie jemals einen Arbeitstag verschwendet, weil Sie in der Befehlszeile die falsche Taste gedrückt haben? Versionskontrollsysteme sorgen für ein sicheres Netzwerk.

Versionskontrollsysteme sind wirklich für jeden nützlich. (Wer möchte schließlich nicht ein sicheres Netzwerk nutzen?) Sie werden häufig von Softwareentwicklungsteams verwendet. Entwickler, die in Teams arbeiten, müssen in der Lage sein, ihre individuellen Änderungen anzupassen; ein zentrales Versionskontrollsystem ermöglicht dies.

Code-Anpassungen

In einem herkömmlichen Versionskontrollsystem checkt ein Entwickler eine Datei aus, ändert sie und checkt sie dann wieder ein. Der Entwickler, der die Datei auscheckt, hat das ausschließliche Recht, die Datei zu ändern. Kein anderer Entwickler kann die Datei auschecken – und nur der Entwickler, der diese Datei ausgecheckt hat, kann die Änderungen einchecken (Hinweis 2). (Natürlich gibt es für Administratoren viele Möglichkeiten, diese Grenze zu überwinden.)

Überlegen Sie, wie ein exklusiver Checkout funktionieren könnte: Bobs Bruder checkt foo.java aus, um Kommentare hinzuzufügen, und nachdem er den Code geschrieben hat, tut er nichts. Dann ging er zum Mittagessen. Nachdem Bob mit dem Mittagessen fertig war, stellte er fest, dass sich in foo.java ein Fehler befand, auf den ihn sein Chef hingewiesen hatte. Er versucht, foo.java auszuchecken ... aber das Versionskontrollsystem lässt ihn nicht zu, weil sein Bruder es bereits ausgecheckt hat. Bob musste warten, bis sein Bruder vom Mittagessen zurückkam (was an diesem „guten“ Tag zwei Stunden dauerte), damit er den Fehler beheben konnte.

In einem großen Open-Source-Projekt, bei dem Entwickler in jeder Zeitzone spät arbeiten können, funktioniert es offensichtlich nicht, einem Entwickler die Möglichkeit zu geben, andere Entwickler irgendwo daran zu hindern, an einer Datei weiterzuarbeiten. Sie werden es irgendwann satt haben, nicht an Projekten arbeiten zu können, wenn sie es möchten.

CVS löst dieses Problem mit seinem unbegrenzten Checkout-Modus. Durch das Auschecken einer Datei erhält der Entwickler keine exklusiven Rechte an dieser Datei. Andere Entwickler können es ebenfalls auschecken, eigene Änderungen vornehmen und es wieder einchecken.

„Moment mal“, könnte man sagen. „Aber wird die vorherige Registrierung durch die nachfolgende Registrierung nicht überschrieben?“ Die detaillierte Antwort lautet: Wenn mehrere Entwickler Änderungen an derselben Datei vornehmen, erkennt CVS dies und führt diese Änderungen automatisch zusammen.

Wow. Keine Sorge, CVS wird vorsichtig sein und Änderungen automatisch zusammenführen, solange sie nicht in derselben Codezeile vorgenommen werden. Wenn CVS diese Änderungen nicht sicher verarbeiten kann, müssen Entwickler sie manuell zusammenführen. Wohin von hier aus?

Auf vielen Plattformen sind zahlreiche CVS-Add-Ons verfügbar, die CVS um Funktionalität erweitern oder die Verwendung von CVS vereinfachen.

Vorteile der Verwendung

  • Beim Ändern der Software können unwissentlich einige Fehler eingemischt werden, und es kann lange dauern, bis Sie deren Existenz bemerken. Mit cvs können Sie ganz einfach eine alte Version wiederherstellen und sehen, welche Änderung den Fehler verursacht hat. Manchmal ist das nützlich.

  • cvs verwendet eine intelligente Methode, um alle Versionen einer Datei in einer Datei zu speichern und nur die Unterschiede zwischen verschiedenen Versionen zu speichern.

  • cvs wurde ursprünglich im Dezember 1986 von Dick Grune in Band 6 der comp.sources.unix-Newsgroup veröffentlicht; im April 1989 entwarf und programmierte Brian Berliner cvs. Jeff Polk half Brian dann beim Entwurf des CVS-Moduls und der Unterstützung der Anbieterzweige.

  • cvs kann Ihnen keine Anleitung geben, wie Sie was konstruieren. Es speichert lediglich eine Baumstrukturdatei, die Sie für Wiederherstellungszwecke erstellt haben.

  • cvs kann nicht entscheiden, wie Speicherplatz in einem Checkout-Arbeitsverzeichnis verwendet werden soll. Wenn Sie Makefiles oder Skripte in jedes Verzeichnis schreiben und den relativen Speicherort von allem anderen kennen müssen, müssen Sie manchmal das gesamte Repository auschecken.

  • Wenn Sie Ihre Arbeit modularisieren und ein Build-System einrichten, das Dateien teilt (über Links, Mounts, VPATH in Makefiles usw.), können Sie die Festplattennutzung nach Ihren Wünschen gestalten.

  • Sie sollten ein Tool unter cvs platzieren, um ein solches Build-System (Skripte, Makefiles usw.) zu unterstützen.

  • Wenn einige Änderungen außerhalb des CVS-Bereichs auftreten, überlegen Sie, welche Dateien neu erstellt werden müssen. Eine traditionelle Methode besteht darin, mit make einige automatisierte Tools zu erstellen und zu verwenden, um verwandte Dateien zu generieren, die von make verwendet werden.

Verwandte Empfehlungen: „Linux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas ist CVS unter Linux?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage