Merge branch 'dev/no_replace' of https://github.com/raphink/github-changelog-generator into raphink-dev/no_replace

This commit is contained in:
Petr Korolev 2015-08-24 14:43:05 +03:00
commit 8c35215697
4 changed files with 23 additions and 0 deletions

View File

@ -104,6 +104,14 @@ So, if you got error like this:
It's time to create this token or wait for 1 hour before GitHub reset the counter for your IP.
## Migrating from a manual changelog
Knowing how dedicated you are to your project, you probably haven't been waiting for github-changelog-generator to keep a changelog,
but you most likely wouln't like to have to open issues and PRs for all past features listed in your historic changelog.
That's where `--base` comes handy. This option lets you pass a static changelog to be appended at the end of the generated entries.
If you have a `HISTORY.md` file in your project, it will automatically be picked as the static historical changelog and appended.
### Rake task

View File

@ -16,6 +16,8 @@ module GitHubChangelogGenerator
log += generate_log_for_all_tags
end
log += File.read(@options[:base]) if File.file?(@options[:base])
log += "\n\n\\* *This Change Log was automatically generated by [github_changelog_generator](https://github.com/skywinder/Github-Changelog-Generator)*"
@log = log
end

View File

@ -52,6 +52,14 @@ module GitHubChangelogGenerator
[newer_tag_link, newer_tag_name, newer_tag_time]
end
def detect_since_tag
if @options[:base] && File.file?(@options[:base])
reader = GitHubChangelogGenerator::Reader.new
content = reader.read(@options[:base])
return content[0]["version"] if content
end
end
# Return tags after filtering tags in lists provided by option: --between-tags & --exclude-tags
#
# @return [Array]
@ -64,6 +72,7 @@ module GitHubChangelogGenerator
def filter_since_tag(all_tags)
filtered_tags = all_tags
tag = @options[:since_tag]
tag ||= detect_since_tag
if tag
if all_tags.map(&:name).include? tag
idx = all_tags.index { |t| t.name == tag }

View File

@ -50,6 +50,9 @@ module GitHubChangelogGenerator
opts.on("-o", "--output [NAME]", "Output file. Default is CHANGELOG.md") do |last|
options[:output] = last
end
opts.on("-b", "--base [NAME]", "Optional base file to append generated changes to.") do |last|
options[:base] = last
end
opts.on("--bugs-label [LABEL]", "Setup custom label for bug-fixes section. Default is \"**Fixed bugs:**""") do |v|
options[:bug_prefix] = v
end
@ -156,6 +159,7 @@ module GitHubChangelogGenerator
tag2: nil,
date_format: "%Y-%m-%d",
output: "CHANGELOG.md",
base: "HISTORY.md",
issues: true,
add_issues_wo_labels: true,
add_pr_wo_labels: true,