Heim > häufiges Problem > Hauptteil

So verwenden Sie SVN

爱喝马黛茶的安东尼
Freigeben: 2020-06-10 14:02:12
Original
36079 Leute haben es durchsucht

So verwenden Sie SVN

Nutzungsszenario:

Wenn ein bestimmter Teil Ihres Projekts (hier bezieht sich auf das mobile Client-Projekt) der Version (z. B. Version 1.0) wurde entwickelt, getestet und online veröffentlicht. Die Entwicklung neuer Anforderungen erfordert eine Änderung des Codes in mehreren Dateien Laut Rückmeldung von Benutzern oder Testern liegt ein schwerwiegender Fehler im Projekt vor, der dringend behoben werden muss, und es ist erforderlich, sofort nach der Fehlerbehebung online zu gehen zu diesem Zeitpunkt? Basiert die Reparatur auf den neu entwickelten Bedürfnissen? Die Antwort ist nein, und der Grund ist: Wenn die Fehler auf der Grundlage neuer Anforderungen behoben werden, die entwickelt wurden, dann wurden die neuen Anforderungen noch nicht entwickelt, geschweige denn getestet. Wie kann es sofort (oder so) online gestellt werden? schnellstmöglich)? ! Drittens: Was soll ich tun, wenn es bei der Entwicklung neuer Funktionen und dem Code zur Fehlerbehebung zu Konflikten mit demselben Codeteil kommt? Offensichtlich können Fehlerkorrekturen nicht auf der Grundlage des aktuell entwickelten Codes durchgeführt werden. Die perfekte Lösung ist: Fehlerkorrektur in der zu diesem Zeitpunkt abgeschlossenen Version. Die Vorteile davon sind:

1: Nach dem Fehler behoben Es kann sofort gestartet werden und die Startzeit wird nicht verzögert, weil die neuen Anforderungen noch nicht abgeschlossen oder getestet wurden

2: Fehlerbehebungen wurden in der ursprünglich gestarteten Version behoben und das Risiko einer Verursachung verringert Neue Fehler sind gering. Wenn es sich um neue Fehler handelt, können neue Funktionen neue Fehler mit sich bringen.

Verwandte Empfehlungen: „SVN-Video-Tutorial

SVN-Warehouse-Verzeichnisstruktur Repository:

(1) Stamm

(2) Tags

(3) Zweige

Stamm (Stamm | Hauptlinie) Zweige (Zweig) Tags (Markierung)

LKW (Stamm | Hauptlinie | Hauptzweig): Wird für die Entwicklung der Hauptrichtung verwendet Neue Funktionen sollten als Modul in der Hauptzeile platziert werden. Wenn nach Abschluss der Entwicklung Änderungen erforderlich sind, verwenden Sie die Verzweigung.

Zweig (Zweig): Zweigentwicklung und Hauptentwicklung können gleichzeitig durchgeführt werden, dh parallele Entwicklungen werden normalerweise zum Beheben von Fehlern verwendet.

Tag (Markierung): Wird für Tags verwendet. Eine verfügbare Version kann als online veröffentlichte Version oder als Testversion markiert werden. Sie ist normalerweise schreibgeschützt.

SVN-spezifische Betriebsschritte: (TortoiseSVN-Version: 1.8.8)

1: Erstellen Sie ein Lager

1. Verzeichnisstruktur D erstellen: TortoiseSVNRepositoryRepo-iOS

2. Klicken Sie mit der rechten Maustaste auf die Verzeichnisstruktur

---> > Repository hier erstellen

---> Repobrowser starten --->

So verwenden Sie SVNZwei: Laden Sie das Projekt auf SVN hoch

So verwenden Sie SVNRechtsklick auf den Desktop

---> ; TortoiseSVNSo verwenden Sie SVN

--->repo-browser--> URL: file:///D:/TortoiseSVN/Repository/Repo-iOS ---> 🎜>
---> Rechtsklick auf den Stammordner

---> Ordner hinzufügen...


---> Wählen Sie das äußerste Verzeichnis des Projekts aus, das auf SVN hochgeladen werden soll, und geben Sie das Protokoll ein


---> Ok



Verwandte Empfehlungen: „

FAQ

3: Auschecken So verwenden Sie SVN

1. Erstellen Sie an einer beliebigen Stelle in Ihrem Computerverzeichnis einen Projektcode, zum Beispiel: D:TortoiseSVNRepositorySource

So verwenden Sie SVN2. Schauen Sie sich den Code an diesem Ort an

Viertel: Entwicklungszyklus

1. In Verzeichnis D: TortoiseSVNRepositorySourcetrunkMyAppProject wird entwickelt Es befindet sich auf der Hauptleitung

Da das Projekt gerade erst eingerichtet wurde und neue Funktionen entwickelt werden, muss es auf der Hauptleitung entwickelt werden

2. Entwicklung Nach einer gewissen Zeit Nach dem Testen wurde es im App Store gestartet und Android wurde in andere Anwendungszentren hochgeladen. Ein beim Start aus der HomeViewController-Datei extrahierter Code lautet wie folgt: So verwenden Sie SVN

[objc ] Einfache Kopie anzeigen

Codeausschnitte anzeigen, die von meinen Codeausschnitten auf CODE abgeleitet wurden

- (void) viewDidLoad {  
   [super viewDidLoad];  
   // -----------------------------------------  
    int y = 0;  
    int result = 10 / y;     
    NSLog(@"iOS APP 第一阶段开发完成了! 结果是:%ld", result);  
   // End  
}
Nach dem Login kopieren

3. Erstellen Sie ein neues Verzeichnis: 1.0 im Verzeichnis D:TortoiseSVNRepositorySourcetags, übermitteln Sie das Verzeichnis an SVN und klicken Sie dann mit der rechten Maustaste auf das Verzeichnis D:TortoiseSVNRepositorySourcetrunkMyAppProject--->Branch/tag .. -----> Zu Pfad:/tags/1.0/MyAppProject und wählen Sie Head Revision im Verzeichnis ---> aus Aktualisieren Sie das Verzeichnis für den Update-Vorgang. Nach dem Update sehen Sie einen vollständigen Quellcode des Projekts, der in diesem Verzeichnis gespeichert ist (der Quellcode in diesem Verzeichnis kann als Kopie der Version 1.0 im Trunk-Verzeichnis betrachtet werden). Überprüfen Sie viewDidLoad und Trunk/MyAppProject in /tags/1.0/. HomeViewController Der viewDidLoad-Code in /HomeViewController ist genau derselbe.

So verwenden Sie SVN

So verwenden Sie SVN

4. Entwicklung neuer Anforderungen für die nächste Stufe, in der Entwicklung

5 Melden Sie, dass die Anwendung einen schwerwiegenden Fehler aufweist, der sofort behoben und so schnell wie möglich online gestellt werden muss. Zu diesem Zeitpunkt muss der Programmierer einen Zweig für MyAppProject unter Tags/1.0 erstellen Der Vorgang ist wie folgt: Wählen Sie Quelle/tags/1.0/MyAppProject aus. Klicken Sie mit der rechten Maustaste auf TortoiseSVN---->Branch/tag... -----> Zu Pfad:/branches/MyAppProject ---> Ok

Sehen Sie sich D zu diesem Zeitpunkt an: Es gibt noch keinen Inhalt im Verzeichnis TortoiseSVNRepositorySourcebranches und es muss aktualisiert werden. Nach dem Update wird festgestellt, dass auch ein vollständiger Projektcode in

< angezeigt wird 🎜> in diesem Verzeichnis (dieser Code kann als Kopie von tags/1.0/MyAppProject betrachtet werden). Der Unterschied besteht darin, dass das Verzeichnis „To Path“ unterschiedlich ist Das Diagramm zeigt das Verzweigungsdiagramm, aber der Wert von to path ist derzeit unterschiedlich. viewDidLoad in branchen/MyAppProject/HomeViewController Es ist genau der gleiche wie der viewDidLoad-Code in tags/1.0/MyAppProject/HomeViewController.

6. Wechseln Sie den Arbeitsbereich, öffnen Sie das Projekt mit dem integrierten Xcode|Eclipse-Tool unter /branches/MyAppProject und debuggen und beheben Sie dann den Fehler. Beachten Sie, dass das Projekt in der Verzweigung geöffnet werden muss

7. Nachdem der Fehler behoben wurde, senden Sie zuerst die geänderte Datei und starten Sie die Client-App. Nachdem der Start abgeschlossen ist, markieren Sie Branches/MyAppProject/ im Verzeichnis 1.0.1 (tags/1.0. 1) (Die Operationsschritte sind die gleichen wie in Schritt 3.) Sie können sehen, dass tags/1.0.1/HomeViewController.viewDidLoad und branchen/MyAppProject/HomeViewController.viewDidLoad vollständig konsistent sind Fügen Sie einen neuen Tag zu Branches/MyAppProject hinzu. Wir werden den Fehler auf dieser Grundlage erneut beheben. Bisher wurde der Code wie folgt behoben:


[objc] einfache Kopie anzeigen


Zeigen Sie den Codeteil auf CODE Abgeleitet von meinem Codeteil

- (void) viewDidLoad {  
   [super viewDidLoad];  
   // -----------------------------------------  
    int y = 10;  
    int result = 10 / y;  
    NSLog(@"iOS APP 第一阶段开发完成了! 结果是:%ld", result);  
   // End  
  
   NSLog(@"1.0 版本闪退bug 已修复, 程序出现除0异常");  
}
Nach dem Login kopieren

Als nächstes führen Sie den Zweig und den Stamm zusammen. Die Schritte sind wie folgt:

Rechtsklick auf Branches/MyAppProject ------>TortoiseSVN

----> Zusammenführen...

--->

----> Weiter ---> URL zum Zusammenführen von: file:///D:/TortoiseSVN/Repository/Repo-iOS/trunk/MyAppProject


----> Weiter


- ---> Zusammenführen



So verwenden Sie SVN

9. Die Schritte zum Zusammenführen von Stämmen und Zweigen sind wie folgt:

So verwenden Sie SVN Rechtsklick/turnk/MyAppProject ----> Revisionen -----> Weiter

-----> ; URL zum Zusammenführen von: file:///D:/TortoiseSVN/Repository/Repo-iOS/branches/MyAppProject


Die Schritte sind die gleichen wie oben, aber der Pfad der URL, von der aus zusammengeführt werden soll, ist anders. Nachdem die Zusammenführung abgeschlossen ist, überprüfen Sie die Methode /trunk/MyAppProject/HomeViewController/viewDidLoad wie folgt:

[objc] view plain copy


Sehen Sie sich den von meinem Codeteil abgeleiteten Codeteil an auf CODE

rrree

10. Zu diesem Zeitpunkt ist die Zusammenführung vollständig abgeschlossen. Wenn Sie den Quellcode nicht im Zweigverzeichnis haben möchten, müssen Sie ihn ändern Verschieben Sie den Arbeitsbereich in die Hauptzeile und verwenden Sie Xcode, um den Stamm erneut zu öffnen. Das MyAppProject-Projekt entwickelt weiterhin neue Funktionen, die noch nicht abgeschlossen sind. Das SVN-Verzeichnis lautet wie folgt:

Hinweis:

So verwenden Sie SVN1 Zweigentwicklung und Stammentwicklung sind zwei völlig unabhängige Prozesse, und beide können gleichzeitig entwickelt werden gleichzeitig

2. Da die Branch- und Trunk-Entwicklung parallel erfolgt, können beide vom aktuellen Projekt geänderte Dateien beliebig oft einreichen

Das obige ist der detaillierte Inhalt vonSo verwenden Sie SVN. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
svn
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!