summaryrefslogtreecommitdiff
path: root/tool/sync_default_gems.rb
diff options
context:
space:
mode:
authorTakashi Kokubun <takashikkbn@gmail.com>2023-08-23 14:22:47 -0700
committerTakashi Kokubun <takashikkbn@gmail.com>2023-08-23 14:22:47 -0700
commit544488f1145080e54424e1c8ac28795f37502302 (patch)
treeaef1730b323ee80d21373dd4b4820b6f4384fada /tool/sync_default_gems.rb
parentcdbc70d088c909fb5b554a8f764f09ebc3720634 (diff)
Improve comments in sync_default_gems
Diffstat (limited to 'tool/sync_default_gems.rb')
-rwxr-xr-xtool/sync_default_gems.rb24
1 files changed, 12 insertions, 12 deletions
diff --git a/tool/sync_default_gems.rb b/tool/sync_default_gems.rb
index 7c0bf1ddbd..5177204aae 100755
--- a/tool/sync_default_gems.rb
+++ b/tool/sync_default_gems.rb
@@ -591,28 +591,28 @@ module SyncDefaultGems
system(*%w[git add yarp])
end
- # Discover unmerged files
- # AU: unmerged, added by us
- # DU: unmerged, deleted by us
- # UU: unmerged, both modified
- # UA: unmerged, added by them
- # AA: unmerged, both added
- unmerged = pipe_readlines(%W"git status --porcelain -z")
- if unmerged.empty?
- # Everything was removed as `ignored_paths`. Skip this commit.
+ # Skip this commit if everything has been removed as `ignored_paths`.
+ changes = pipe_readlines(%W"git status --porcelain -z")
+ if changes.empty?
`git reset` && `git checkout .` && `git clean -fd`
puts "Skip empty commit #{sha}"
next
end
- # For YARP, we want to handle DD: deleted by both.
+ # For YARP, we want to skip DD: deleted by both.
if gem == "yarp"
- deleted = unmerged.grep(/^DD /)
+ deleted = changes.grep(/^DD /)
deleted.map! { |line| line.delete_prefix("DD ") }
system(*%W"git rm -f --", *deleted) unless deleted.empty?
end
- unmerged.map! {|line| line[/\A(?:.U|[UA]A) (.*)/, 1]}
+ # Discover unmerged files
+ # AU: unmerged, added by us
+ # DU: unmerged, deleted by us
+ # UU: unmerged, both modified
+ # UA: unmerged, added by them
+ # AA: unmerged, both added
+ unmerged = changes.map {|line| line[/\A(?:.U|[UA]A) (.*)/, 1]}
unmerged.compact!
ignore, conflict = unmerged.partition {|name| ignore_file_pattern =~ name}
# Reset ignored files if they conflict