diff options
| -rwxr-xr-x | tool/sync_default_gems.rb | 6 | ||||
| -rwxr-xr-x | tool/test/test_sync_default_gems.rb | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/tool/sync_default_gems.rb b/tool/sync_default_gems.rb index 6ddb11b63c..e425965042 100755 --- a/tool/sync_default_gems.rb +++ b/tool/sync_default_gems.rb @@ -562,8 +562,8 @@ module SyncDefaultGems changed = changed.reject do |f| case when toplevels.fetch(top = f[%r[\A[^/]+(?=/|\z)]m]) { - remove << top unless - toplevels[top] = system(*%w"git cat-file -e", "#{base}:#{top}", err: File::NULL) + remove << top if toplevels[top] = + !system(*%w"git cat-file -e", "#{base}:#{top}", err: File::NULL) } # Remove any new top-level directories. true @@ -590,8 +590,6 @@ module SyncDefaultGems if picked system(*%w"git commit --amend --no-edit --", *remove, %i[out err] => File::NULL) end - remove = remove.map {|d| d + "/"} - changed.delete_if {|f| remove.any? {|d| f.start_with?(d)}} end unless ignore.empty? diff --git a/tool/test/test_sync_default_gems.rb b/tool/test/test_sync_default_gems.rb index 2d46d5b6bf..d2219cb673 100755 --- a/tool/test/test_sync_default_gems.rb +++ b/tool/test/test_sync_default_gems.rb @@ -188,6 +188,8 @@ module Test_SyncDefaultGems File.write("#@target/docs/NEWS.md", "= NEWS!!!\n") git(*%W"add --", "docs/NEWS.md", chdir: @target) File.write("#@target/docs/hello.md", "Hello\n") + git(*%W"add --", "docs/hello.md", chdir: @target) + git(*%W"commit -q -m", "It's a news", chdir: @target) out = assert_sync() assert_equal(@sha["src"], top_commit("src"), out) end |
