Skip to content

Instantly share code, notes, and snippets.

@samleb
Forked from strax/.gitattributes
Created June 7, 2017 14:52
Show Gist options
  • Save samleb/76751ecd3a59eee73716a4f8edad73b5 to your computer and use it in GitHub Desktop.
Save samleb/76751ecd3a59eee73716a4f8edad73b5 to your computer and use it in GitHub Desktop.
Auto-resolving schema.rb version conflicts on Rails 4.0+
db/schema.rb merge=railsschema
[merge "railsschema"]
name = newer Rails schema version
driver = "ruby -e '\n\
system %(git), %(merge-file), %(--marker-size=%L), %(%A), %(%O), %(%B)\n\
b = File.read(%(%A))\n\
b.sub!(/^<+ .*\\nActiveRecord::Schema\\.define.version: (\\d+). do\\n=+\\nActiveRecord::Schema\\.define.version: (\\d+). do\\n>+ .*/) do\n\
%(ActiveRecord::Schema.define(version: #{[$1, $2].max}) do)\n\
end\n\
File.open(%(%A), %(w)) {|f| f.write(b)}\n\
exit 1 if b.include?(%(<)*%L)'"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment