2010-01-13 5 views
5

Ist es das überhaupt wert?Wie schwierig ist es, von Rails 1.2.3 auf 2.3.5 zu aktualisieren?

Ich arbeite an der Bewertung einer Legacy-Code-Basis für einen Client - der Quellcode wurde seit 2007 weitgehend unberührt und es ist mit Rails 1.2.3 gebaut.

Meine Rails-Erfahrung begann mit Version 2.1 - der Code ist ziemlich Lager/Gerüst wie und ohne sinnvolle Tests - ich war neugierig zu sehen, ob ich es lokal laufen könnte - aber ich bin nicht einmal sicher, wo ich anfangen soll. Direkt davon weiß nicht einmal was "Rake db: create" bedeutet. Ha!

Wird es ein großer Schmerz sein, es sogar in 2.3.5 zu bekommen? Sollte ich stören?

Würde gerne Ihre Gedanken hören.

Dank

+0

Alles, danke für Ihre Kommentare. So geschätzt. Es ist definitiv ein Urteilsspruch und ich werde es abwägen, wo mein Klient mit der Anwendung gehen will. Sie haben angedeutet, große Teile der Website zurückzuziehen, von einer CMS-getriebenen Website zu einer sozialeren Web-App. Ich habe bereits eine Reihe von großen Dingen entdeckt, die der vorherige Entwickler erleuchtet hat, die jetzt relativ einfach (oder einfacher) zu implementieren sind (Authentifizierung/Autorisierung, Senden von E-Mails, Hochladen von Dateien, Suche, Paginierung) diese Artikel allein lassen mich denken, dass es Zeit ist "Studiere" was da ist und benutze die vorherige Version als Referenz. – rsturim

Antwort

4

Wenn Sie sich aktiv für die Website zu entwickeln wirst werden, dann ja, es lohnt sich, die Zeit in das Projekt versinkt es zu neuesten Stand zu bringen. Seit Rails 1.2 ist viel passiert, was die Entwicklung zu einer viel angenehmeren Erfahrung machen wird. Leben ohne benannte Bereiche oder RESTful Ressourcen ist wirklich schwierig. Wenn Sie hier und da nur das eine oder andere merkwürdige Ding flicken, könnte es sich lohnen, es so weit wie möglich zu verlassen und sich nur mit den Exzentrizitäten zu beschäftigen.

Da 1.2.3 kurz vor den Releases bis 2.0 erstellt wurde, wo viele Warnungen und Abmahnungen eingeführt wurden, könnte es ziemlich mühsam werden.

Manche Dinge im Auge behalten sollten:

  • Migrationen sind jetzt Datum-markierte, nicht nummeriert, sondern sind zumindest nach hinten
  • Viele Anbieter kompatibel/plugins kann nicht funktionieren, keine 2. x kompatible Version, oder muss aufgerüstet werden
  • Die Routing-Engine hat sich geändert, und der Name vieler Routen möglicherweise geändert haben, so sehen Sie, was Rake: Routen sagt und machen Sie sich bereit für viele suchen und ersetzen
2

Ich habe dies für einen Kunden mit einer kleineren Website getan. Erstens, Versionskontrolle ist dein Freund. Stellen Sie sicher, dass Sie die gesamte Codebasis zugesichert haben.

Als nächstes wird das Grundrezept wie folgt

  1. Tag die Stromquelle
  2. Update auf die nächste Version von Schienen (Sie werden für die Release-Ankündigung Google haben). Meine App wurde eingefroren, also musste ich nur auf diese Version
  3. Rake Rails: aktualisieren, um die Konfig, Skripte und js
  4. zu aktualisieren Diff Ihre Arbeitskopie gegen die Version in Ihrem scm. Nehmen Sie alle notwendigen Änderungen für die App vor.
  5. Aktualisieren Sie alle Edelsteine ​​/ Plugins, falls erforderlich
  6. Starten Sie die App, trainieren und testen. Geben Sie für deprecation bemerkt
  7. Wenn alles gut aussieht, verpflichten, scm und Tag
  8. Lather, spülen, wiederholen

Für meine Kunden app, es war viel einfacher, als ich dachte.

Verwandte Themen