Heim Entwicklungswerkzeuge Idiot Was ist der Unterschied zwischen SVN und Git?

Was ist der Unterschied zwischen SVN und Git?

May 14, 2020 am 11:54 AM
git svn

Was ist der Unterschied zwischen SVN und Git?

Was ist der Unterschied zwischen SVN und Git?

Der Unterschied zwischen Git und SVN

GIT ist nicht nur ein Versionskontrollsystem, es ist auch ein Content-Management-System ( CMS), Arbeitsmanagementsystem usw. Wenn Sie über Erfahrung in der Verwendung von SVN verfügen, müssen Sie einige mentale Änderungen vornehmen, um sich an einige der von GIT bereitgestellten Konzepte und Funktionen anzupassen.

1. GIT ist verteilt, SVN ist nicht:

Dies ist der Hauptunterschied zwischen GIT und anderen nicht verteilten Versionskontrollsystemen wie SVN, CVS usw. Wenn Sie dieses Konzept verstehen können, haben Sie die Hälfte geschafft. Ein kleiner Haftungsausschluss muss gemacht werden: GIT ist derzeit nicht das erste oder einzige verteilte Versionskontrollsystem. Es gibt auch einige Systeme wie Bitkeeper, Mercurial usw., die ebenfalls im verteilten Modus laufen. Aber GIT leistet in dieser Hinsicht bessere Arbeit und verfügt über leistungsfähigere Funktionen.

GIT verfügt wie SVN über ein eigenes zentrales Repository oder einen eigenen Server. GIT bevorzugt jedoch die Verwendung im verteilten Modus, d. h. jeder Entwickler klont sein eigenes Repository auf seinem Computer, nachdem er den Code vom zentralen Repository/Server ausgecheckt hat. Man kann sagen, dass Sie, wenn Sie an einem Ort ohne Internetzugang festsitzen, z. B. in einem Flugzeug, in einem Keller, in einem Aufzug usw., immer noch Dateien übermitteln, historische Versionsdatensätze anzeigen, Projektzweige erstellen usw. können. Manchen scheint dies nicht viel zu nützen, aber wenn Sie plötzlich auf eine Umgebung ohne Netzwerk stoßen, wird dies Ihr großes Problem lösen.

Ebenso ist dieser verteilte Betriebsmodus auch ein großes Geschenk für die Entwicklung der Open-Source-Software-Community. Sie müssen nicht mehr wie bisher Patch-Pakete erstellen und per E-Mail versenden, sondern nur noch A Zweig, der eine Push-Anfrage an das Projektteam sendet. Dadurch bleibt Ihr Code aktuell und geht während der Übertragung nicht verloren. GitHub.com ist ein hervorragender Fall.

Einige Gerüchte haben die Runde gemacht, dass zukünftige Versionen von Subversion ebenfalls auf dem verteilten Modell basieren werden. Aber zumindest ist es noch nicht sichtbar.

2.GIT speichert Inhalte als Metadaten, während SVN Inhalte als Dateien speichert:

Alle Ressourcenkontrollsysteme verbergen die Metainformationen von Dateien in einem Dateiordner wie .svn, .cvs usw. Wenn Sie die Größe des .git-Verzeichnisses mit der von .svn vergleichen, werden Sie feststellen, dass sie sehr unterschiedlich sind. Da das .git-Verzeichnis eine geklonte Version des Repositorys auf Ihrem Computer ist, enthält es alles im zentralen Repository, z. B. Tags, Zweige, Versionsdatensätze usw.

3. GIT-Zweige unterscheiden sich von SVN-Zweigen:

Der Zweig ist überhaupt nichts Besonderes in SVN, er ist nur ein weiteres Verzeichnis im Repository. Wenn Sie wissen möchten, ob ein Zweig zusammengeführt wurde, müssen Sie manuell einen Befehl wie svn propget svn:mergeinfo ausführen, um zu bestätigen, ob der Code zusammengeführt wurde. Vielen Dank an Klassenkamerad Ben für den Hinweis auf diese Funktion. Daher kommt es häufig vor, dass einige Zweige übersehen werden.

Die Arbeit mit GIT-Branches ist jedoch recht einfach und macht Spaß. Sie können schnell zwischen mehreren Zweigen desselben Arbeitsverzeichnisses wechseln. Sie können nicht zusammengeführte Zweige leicht finden und diese Dateien schnell und einfach zusammenführen.

4. GIT hat keine globale Versionsnummer, während SVN Folgendes hat:

Bisher ist dies die größte Funktion, die GIT im Vergleich zu SVN fehlt. Sie wissen auch, dass die SVN-Versionsnummer tatsächlich eine Momentaufnahme des Quellcodes zu jedem entsprechenden Zeitpunkt ist. Ich denke, es ist der größte Durchbruch in der Entwicklung von CVS zu SVN. Da GIT und SVN konzeptionell unterschiedlich sind, weiß ich nicht, welche Funktionen in GIT ihnen entsprechen. Wenn Sie Hinweise haben, teilen Sie diese bitte in den Kommentaren mit allen.

Update: Einige Leser haben darauf hingewiesen, dass wir den SHA-1 von GIT verwenden können, um einen Code-Snapshot eindeutig zu identifizieren. Dies ersetzt die leicht lesbaren numerischen Versionsnummern in SVN nicht vollständig. Der Zweck sollte jedoch derselbe sein.

5. Die Inhaltsintegrität von GIT ist besser als die von SVN:

Der Inhaltsspeicher von GIT verwendet den SHA-1-Hash-Algorithmus. Dies stellt die Integrität des Codeinhalts sicher und reduziert Unterbrechungen des Repositorys bei Festplattenausfällen und Netzwerkproblemen.

Verwandte Empfehlungen: „Git Tutorial

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen SVN und Git?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So führen Sie das H5 -Projekt aus So führen Sie das H5 -Projekt aus Apr 06, 2025 pm 12:21 PM

Ausführen des H5 -Projekts erfordert die folgenden Schritte: Installation der erforderlichen Tools wie Webserver, Node.js, Entwicklungstools usw. Erstellen Sie eine Entwicklungsumgebung, erstellen Sie Projektordner, initialisieren Sie Projekte und schreiben Sie Code. Starten Sie den Entwicklungsserver und führen Sie den Befehl mit der Befehlszeile aus. Vorschau des Projekts in Ihrem Browser und geben Sie die Entwicklungsserver -URL ein. Veröffentlichen Sie Projekte, optimieren Sie Code, stellen Sie Projekte bereit und richten Sie die Webserverkonfiguration ein.

So sehen Sie die Ergebnisse nach dem Modifizieren des Bootstraps So sehen Sie die Ergebnisse nach dem Modifizieren des Bootstraps Apr 07, 2025 am 10:03 AM

Schritte zur Anzeige der geänderten Bootstrap -Ergebnisse: Öffnen Sie die HTML -Datei direkt im Browser, um sicherzustellen, dass die Bootstrap -Datei korrekt verwiesen wird. Löschen Sie den Browser -Cache (Strg Shift R). Wenn Sie CDN verwenden, können Sie CSS im Entwickler -Tool direkt ändern, um die Effekte in Echtzeit anzuzeigen. Wenn Sie den Bootstrap -Quellcode ändern, laden Sie die lokale Datei herunter und ersetzen Sie den Befehl "Build mithilfe eines Build -Tools wie WebPack.

Wie man Vue Pagination verwendet Wie man Vue Pagination verwendet Apr 08, 2025 am 06:45 AM

Pagination ist eine Technologie, die große Datensätze in kleine Seiten aufteilt, um die Leistung und die Benutzererfahrung zu verbessern. In VUE können Sie die folgende integrierte Methode zum Paging verwenden: Berechnen Sie die Gesamtzahl der Seiten: TotalPages () TRAVERSAL-Seitennummer: V-für Anweisung, um die aktuelle Seite festzulegen: aktuelle Seite

Überwachen Sie MySQL und Mariadb -Tröpfchen mit Prometheus Mysql Exporteur Überwachen Sie MySQL und Mariadb -Tröpfchen mit Prometheus Mysql Exporteur Apr 08, 2025 pm 02:42 PM

Eine effektive Überwachung von MySQL- und MariADB -Datenbanken ist entscheidend für die Aufrechterhaltung einer optimalen Leistung, die Identifizierung potenzieller Engpässe und die Gewährleistung der Zuverlässigkeit des Gesamtsystems. Prometheus MySQL Exporteur ist ein leistungsstarkes Tool, das detaillierte Einblicke in Datenbankmetriken bietet, die für die proaktive Verwaltung und Fehlerbehebung von entscheidender Bedeutung sind.

Hadidb: Eine leichte, horizontal skalierbare Datenbank in Python Hadidb: Eine leichte, horizontal skalierbare Datenbank in Python Apr 08, 2025 pm 06:12 PM

Hadidb: Eine leichte, hochrangige skalierbare Python-Datenbank Hadidb (HadIDB) ist eine leichte Datenbank in Python mit einem hohen Maß an Skalierbarkeit. Installieren Sie HadIDB mithilfe der PIP -Installation: PipinstallHadIDB -Benutzerverwaltung erstellen Benutzer: createUser (), um einen neuen Benutzer zu erstellen. Die Authentication () -Methode authentifiziert die Identität des Benutzers. fromHadidb.operationImportUseruser_obj = user ("admin", "admin") user_obj.

So sehen Sie das JavaScript -Verhalten von Bootstrap So sehen Sie das JavaScript -Verhalten von Bootstrap Apr 07, 2025 am 10:33 AM

Der JavaScript -Abschnitt von Bootstrap bietet interaktive Komponenten, die statische Seiten Vitalität ergeben. Wenn Sie sich den Open -Source -Code ansehen, können Sie verstehen, wie er funktioniert: Ereignisbindung löst Dom -Operationen und Stiländerungen aus. Die grundlegende Nutzung umfasst die Einführung von JavaScript -Dateien und die Verwendung von APIs, und die erweiterte Verwendung umfasst benutzerdefinierte Ereignisse und Erweiterungsfunktionen. Zu den häufig gestellten Fragen gehören Versionskonflikte und CSS-Stilkonflikte, die durch Doppelüberprüfung des Codes gelöst werden können. Die Tipps zur Leistungsoptimierung umfassen On-Demand-Laden- und Codekomprimierung. Der Schlüssel zum Beherrschen von Bootstrap JavaScript ist das Verständnis der Designkonzepte, zum Kombinieren praktischer Anwendungen und zum Debuggen und Erforschen von Entwickler -Tools.

Ist Git das gleiche wie GitHub? Ist Git das gleiche wie GitHub? Apr 08, 2025 am 12:13 AM

Git und Github sind nicht dasselbe. Git ist ein Versionskontrollsystem, und GitHub ist eine GIT-basierte Code-Hosting-Plattform. Git wird verwendet, um Codeversionen zu verwalten, und GitHub bietet eine Online -Zusammenarbeit.

So erstellen Sie ein Bootstrap -Framework So erstellen Sie ein Bootstrap -Framework Apr 07, 2025 pm 02:54 PM

Bootstrap Framework Building Guide: Laden Sie Bootstrap herunter und verknüpfen Sie es mit Ihrem Projekt. Erstellen Sie eine HTML -Datei, um die erforderlichen Elemente hinzuzufügen. Erstellen Sie ein reaktionsschnelles Layout mit dem Bootstrap -Mesh -System. Fügen Sie Bootstrap -Komponenten wie Schaltflächen und Formulare hinzu. Entscheiden Sie sich selbst, ob Sie Bootstrap anpassen und Stylesheets bei Bedarf kompilieren möchten. Verwenden Sie das Versionskontrollsystem, um Ihren Code zu verfolgen.

See all articles