Ich habe ein Projekt mit einer lokalen Entwicklungsumgebung geerbt, die Code für diesen Computer hat und der für den Produktionsserver unterschiedlich ist. Obwohl der Großteil davon in Konstanten enthalten ist und der Rest in den Tests enthalten ist, muss ich jedes Mal, wenn ich von der Entwicklung und der Aktualisierung in der Produktion einnehme, dieselben Änderungen in der Produktion vornehmen. Glücklicherweise ist dies ein internes Tool mit geringer Lautstärke.Wie die Änderungen zwischen Produktion und Entwicklung beim Aktualisieren aus dem Repository effizient gehandhabt werden
Ich denke, ich könnte ein Skript schreiben, um es zu automatisieren, aber ich hoffe, es gibt eine bessere Lösung. Hat noch jemand dieses Problem gelöst?
Diese Fragen sind ähnlich, aber nicht die gleiche Sache zu fragen, nur damit Sie wissen, ich sah:
(1) make changes to a production database
(2) transferring changes from dev to prod
Edit: Nelson LaQuet mich setzen auf das, was Ich glaube, das ist die richtige Spur, die mich zu Configuring Rails Applications führte. Ich bin jedoch nicht sicher, wie meine FormController < ApplicationController-Konstanten, wie MyExternalCodeDir, in Config/environments/production.rb und config/environments/development.rb verweisen.
Auch ich möchte nicht jeden Verweis auf MyExternalCodeDir auf etwas wie config.MyExternalCodeDir ändern müssen.
... und Sie können Ihre maschinenspezifischen Einstellungsdateien als config.development.ini und config.production.ini oder etwas festlegen. Kein Code würde sich auf diese Dateien beziehen, aber alles, was Sie tun müssen, um einen neuen Checkout durchzuführen, ist das Umbenennen der entsprechenden Datei. Außerdem erhalten Sie alle Vorteile der Quellcodeverwaltung für Ihre spezifischen Ini-Dateien. – RichieHindle
Ich bin verwirrt. Ich lösche die config.ini, die meine spezifischen Einstellungen hat, dann kopiere die Vorlage in die config.ini und ändere sie wieder in meine Einstellungen ... warum lösche ich sie überhaupt? – kajaco
Sie können es also zu svn: ignore hinzufügen, wodurch es niemals den Code "repository" erreicht. – nlaq