Rails 应用程序:更新冲突 - 选择文件内容的最干净方法



我正在尝试从Rails 5.0升级到Rails 5.1.1。

运行rails app:update会导致各种冲突,其中 Rails 5.1.1 有一个与 Rails 5.0 同名的文件,我被问到我想怎么做。

">

development.rb"的"diff"如下所示:

     config.cache_store = :memory_store
     config.public_file_server.headers = {
-      'Cache-Control' => 'public, max-age=172800'
+      'Cache-Control' => "public, max-age=#{2.days.seconds.to_i}"
     }
   else
     config.action_controller.perform_caching = false
@@ -30,8 +30,6 @@
   config.action_mailer.raise_delivery_errors = false
   config.action_mailer.perform_caching = false
-  host = 'localhost:3000'                     # Local server
-  config.action_mailer.default_url_options = { host: host, protocol: 'http' }
   # Print deprecation notices to the Rails logger.
   config.active_support.deprecation = :log

所以在这种情况下,我很高兴"缓存控制"行被更改,但希望其他 2 行("host.."、"config..."(单独保留。

我知道如何选择旧文件或新文件,但是当您想要两者的一部分时,您会怎么做? 您只是将所需的内容复制到单独的文件中并在交互过程完成后粘贴,还是有更干净的方法?

据我所知,app:update过程没有交互式编辑方式。该过程完成后,您只需返回并对其进行编辑即可。

在这种情况下,最简单的选择似乎是在app:update中选择文件,然后将新的缓存控制值复制到其中。

我用railsdiff.org来比较不同版本的轨道之间的差异

例如,railsdiff.org/5.2.0/6.1.5 将在 5.2 和 6.1.5 之间更改 rails 框架

最新更新