diff options
author | Takashi Kokubun <takashikkbn@gmail.com> | 2022-12-12 23:34:30 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-12 23:34:30 -0800 |
commit | 7edcdc380f3bb6f5a81bfb5798c339acd844a0d3 (patch) | |
tree | 4a3b22f1765fe2edc6525595af264c3970201799 /tool/file2lastrev.rb | |
parent | 3e00cb8256cfe0640cb1d744d07d496128edb7e9 (diff) | |
download | ruby-7edcdc380f3bb6f5a81bfb5798c339acd844a0d3.tar.gz |
Avoid overwriting revision.h when .git doesn't exist (#6915)
* Avoid overwriting revision.h when .git doesn't exist
* Overwrite revision.h if it's blank
Diffstat (limited to 'tool/file2lastrev.rb')
-rwxr-xr-x | tool/file2lastrev.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tool/file2lastrev.rb b/tool/file2lastrev.rb index 1dfb01ab9e..6200e78a56 100755 --- a/tool/file2lastrev.rb +++ b/tool/file2lastrev.rb @@ -25,6 +25,7 @@ end time_format = '%Y-%m-%dT%H:%M:%S%z' vcs = nil +create_only = false OptionParser.new {|opts| opts.banner << " paths..." vcs_options = VCS.define_options(opts) @@ -62,6 +63,9 @@ OptionParser.new {|opts| abort "#{File.basename(Program)}: #{e.message}" unless @suppress_not_found opts.remove (vcs = VCS::Null.new(nil)).set_options(vcs_options) + if @format == :revision_h + create_only = true # don't overwrite existing revision.h when .git doesn't exist + end end } @@ -92,7 +96,7 @@ ok = true begin data = formatter[*vcs.get_revisions(arg)] data.sub!(/(?<!\A|\n)\z/, "\n") - @output.write(data, overwrite: true) + @output.write(data, overwrite: true, create_only: create_only) rescue => e warn "#{File.basename(Program)}: #{e.message}" ok = false |