git-merge-structure-sql 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/LICENSE.txt +1 -1
- data/README.md +15 -7
- data/git-merge-structure-sql.gemspec +2 -2
- data/lib/git-merge-structure-sql.rb +5 -4
- metadata +11 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0e8c35db8645408746b82cf6f317a2a6c6c5c70ba693ca198f84325c508d4f49
|
4
|
+
data.tar.gz: ad2f45570587be9299b378adcb601a481c3f953c2b7eed39a348003e696ff946
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ce85fd23fe236cb10da132ae9e06577c196a0b754425de855087614486de10492b06650a4ebde6f5cf05719e0b7aef5a5eb9c342eb24bc1c235658e85b436d78
|
7
|
+
data.tar.gz: 6558f1ed947236bf03762e0d22d47653e7d8957209ea912a16f757f02859599103eab39245c4dded0c49d6a2502f5085d05c98eaca115cc92181846461ab9c23
|
data/CHANGELOG.md
CHANGED
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,7 +1,16 @@
|
|
1
1
|
# git-merge-structure-sql
|
2
2
|
|
3
|
-
This is a merge driver for Git that resolves
|
4
|
-
|
3
|
+
This is a merge driver for Git that resolves typical merge conflicts
|
4
|
+
in a `db/structure.sql` file of Rails.
|
5
|
+
|
6
|
+
When your project is configured with
|
7
|
+
`config.active_record.schema_format = :sql`, the database schema is
|
8
|
+
kept in `db/structure.sql` instead of `db/schema.rb` in the native
|
9
|
+
dump format of the underlying database engine, which is not suitable
|
10
|
+
for the default merge driver of Git to deal with. As a result, when
|
11
|
+
you try to merge two branches you always have to resolve trivial
|
12
|
+
conflicts manually if new schema migrations take place in both
|
13
|
+
branches. This custom driver takes away such a pain.
|
5
14
|
|
6
15
|
Currently only PostgreSQL, MySQL and SQLite3 dump formats are
|
7
16
|
supported.
|
@@ -17,10 +26,9 @@ for you by this command:
|
|
17
26
|
|
18
27
|
$ git-merge-structure-sql --install
|
19
28
|
|
20
|
-
This adds necessary settings to your
|
21
|
-
|
22
|
-
|
23
|
-
files.
|
29
|
+
This adds necessary settings to your `~/.gitconfig` or
|
30
|
+
`$XDG_CONFIG_HOME/git/config` and the default gitattributes(5) file to
|
31
|
+
enable the merge driver for structure.sql files.
|
24
32
|
|
25
33
|
## Usage
|
26
34
|
|
@@ -33,7 +41,7 @@ See `CHANGELOG.md` for the version history.
|
|
33
41
|
|
34
42
|
## Author
|
35
43
|
|
36
|
-
Copyright (c) 2018 Akinori MUSHA.
|
44
|
+
Copyright (c) 2018-2021 Akinori MUSHA.
|
37
45
|
|
38
46
|
Licensed under the 2-clause BSD license. See `LICENSE.txt` for
|
39
47
|
details.
|
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
29
29
|
spec.require_paths = ["lib"]
|
30
30
|
|
31
|
-
spec.add_development_dependency "bundler", "~>
|
32
|
-
spec.add_development_dependency "rake", "~>
|
31
|
+
spec.add_development_dependency "bundler", "~> 2.2"
|
32
|
+
spec.add_development_dependency "rake", "~> 13.0"
|
33
33
|
spec.add_development_dependency "rspec", "~> 3.0"
|
34
34
|
end
|
@@ -6,7 +6,7 @@
|
|
6
6
|
# How to use:
|
7
7
|
# $ git-merge-structure-sql --install
|
8
8
|
#
|
9
|
-
# Copyright (c) 2018 Akinori MUSHA
|
9
|
+
# Copyright (c) 2018-2021 Akinori MUSHA
|
10
10
|
#
|
11
11
|
# All rights reserved.
|
12
12
|
#
|
@@ -33,7 +33,7 @@
|
|
33
33
|
#
|
34
34
|
|
35
35
|
class StructureSqlMergeDriver
|
36
|
-
VERSION = '1.1.
|
36
|
+
VERSION = '1.1.1'
|
37
37
|
VARIANTS = []
|
38
38
|
|
39
39
|
module Default # This covers PostgreSQL, SQLite and newer MySQL formats.
|
@@ -192,12 +192,13 @@ class StructureSqlMergeDriver
|
|
192
192
|
} or raise "don't you have home?"
|
193
193
|
end
|
194
194
|
|
195
|
-
File.open(attributes_file, '
|
195
|
+
File.open(attributes_file, 'a+') { |f|
|
196
196
|
pattern = /^\s*structure.sql\s+(?:\S+\s+)*merge=#{Regexp.quote(driver_name)}(?:\s|$)/
|
197
197
|
break if f.any? { |line| pattern === line }
|
198
198
|
|
199
199
|
puts "Enabling the \"#{driver_name}\" driver for structure.sql"
|
200
|
-
f.puts
|
200
|
+
f.puts if f.pos > 0
|
201
|
+
f.puts "structure.sql merge=#{driver_name}"
|
201
202
|
}
|
202
203
|
|
203
204
|
exit
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git-merge-structure-sql
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Akinori MUSHA
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-04-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '2.2'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.2'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '13.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '13.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -52,7 +52,7 @@ dependencies:
|
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '3.0'
|
55
|
-
description:
|
55
|
+
description:
|
56
56
|
email:
|
57
57
|
- knu@idaemons.org
|
58
58
|
executables:
|
@@ -80,7 +80,7 @@ metadata:
|
|
80
80
|
homepage_uri: https://github.com/knu/git-merge-structure-sql
|
81
81
|
source_code_uri: https://github.com/knu/git-merge-structure-sql
|
82
82
|
changelog_uri: https://github.com/knu/git-merge-structure-sql/blob/master/CHANGELOG.md
|
83
|
-
post_install_message:
|
83
|
+
post_install_message:
|
84
84
|
rdoc_options: []
|
85
85
|
require_paths:
|
86
86
|
- lib
|
@@ -95,9 +95,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: '0'
|
97
97
|
requirements: []
|
98
|
-
|
99
|
-
|
100
|
-
signing_key:
|
98
|
+
rubygems_version: 3.2.11
|
99
|
+
signing_key:
|
101
100
|
specification_version: 4
|
102
101
|
summary: git merge driver for db/structure.sql in a Rails project
|
103
102
|
test_files: []
|