REBASE-HELPER(1)

πŸ“¦
version 0.29.7 Β· 3 versions
, in fedora 44

🌸 REBASE-HELPER(1) β€” the rebase-helper manual, bestie edition πŸ’–

okay so. rebase-helper is literally the bestie that helps you rebase your package to the latest version. that's the whole vibe. let's get into it 🫢


✨ SYNOPSIS ✨

rebase-helper [-h <#id2>] [--version <#id3>] [-v <#id4>] [--color {always,never,auto} <#id5>]
  [--background {dark,light,auto} <#id6>] [--results-dir RESULTS_DIR <#id7>]
  [--workspace-dir WORKSPACE_DIR <#id8>]
  [--buildtool {copr,koji,mock,rpmbuild} <#id9>]
  [--srpm-buildtool {mock,rpmbuild} <#id10>]
  [--pkgcomparetool
  [{abipkgdiff,csmock,licensecheck,pkgdiff,rpmdiff,rpminspect-
  rpm,rpminspect-srpm,sonamecheck}] <#id11>]
  [--outputtool {json,text} <#id12>]
  [--versioneer {anitya,cpan,hackage,npmjs,pypi,rubygems} <#id13>]
  [--versioneer-blacklist [{anitya,cpan,hackage,npmjs,pypi,rubygems}] <#id14>]
  [--spec-hook-blacklist [{commit-hash-updater,escape-macros,paths-to-rpm-
  macros,pypi-url-fix,replace-old-version,ruby-helper,typo-fix}] <#id15>]
  [--build-log-hook-blacklist [{files}] <#id16>] [--bugzilla-id BUG_ID <#id17>]
  [--non-interactive <#id18>] [--favor-on-conflict {downstream,upstream,off} <#id19>]
  [--not-download-sources <#id20>] [-w <#id21>] [--apply-changes <#id22>]
  [--disable-inapplicable-patches <#id23>] [--skip-version-check <#id24>]
  [--update-sources <#id25>] [--skip-upload <#id26>] [--force-build-log-hooks <#id27>]
  [--builds-nowait <#id28>] [--build-tasks OLD_TASK,NEW_TASK <#id29>]
  [--builder-options BUILDER_OPTIONS <#id30>]
  [--srpm-builder-options SRPM_BUILDER_OPTIONS <#id31>]
  [--lookaside-cache-preset {fedpkg,centpkg,rhpkg,rhpkg-sha512} <#id32>]
  [--changelog-entry CHANGELOG_ENTRY <#id33>] [--no-changelog-entry <#id34>]
  [--config-file CONFIG_FILE <#id35>] [-D 'MACRO EXPR' <#id36>]
  [--copr-project-permanent <#id37>] [--copr-project-frontpage <#id38>]
  [--copr-chroots COPR_CHROOTS <#id39>] [--get-old-build-from-koji <#id40>]
  [--replace-old-version-with-macro <#id41>] [SOURCES <#id1>]

πŸ’… DESCRIPTION πŸ’…

rebase-helper is a tool that helps package maintainers rebase their packages to the latest upstream versions. it's giving "i got you, bestie" energy, fr fr.

you should run it from a directory containing the spec file, sources and patches β€” usually a cloned dist-git repository. that's the whole setup, no cap. πŸŽ€

the new version is specified by the SOURCES <#id1> argument, and that can be either a version number or the filename of the new source archive. cute, right?

and here's the glow-up: starting with version 0.10.0, this argument can be omitted entirely, and the new version gets determined automatically using one of the available versioneers. main character behaviour honestly. ✨


πŸ‘‘ OPTIONS πŸ‘‘

  • SOURCES β€” version number or filename of the new source archive πŸ“¦
  • -h, --help β€” show the help message and dip out
  • --version β€” show the rebase-helper version and exit
  • -v, --verbose β€” be more verbose, bestie. spill the tea β˜•
  • --color {always,never,auto} β€” colorize the output. defaults to auto 🌈
  • --background {dark,light,auto} β€” use the color scheme for the given background. defaults to auto πŸŒ™β˜€οΈ
  • --results-dir RESULTS_DIR β€” the location where the rebase-helper-results directory will be created
  • --workspace-dir WORKSPACE_DIR β€” the location where the rebase-helper-workspace directory will be created
  • --buildtool {copr,koji,mock,rpmbuild} β€” which build tool to use. defaults to mock πŸ”¨
  • --srpm-buildtool {mock,rpmbuild} β€” which SRPM build tool to use. defaults to rpmbuild
  • --pkgcomparetool [{abipkgdiff,csmock,licensecheck,pkgdiff,rpmdiff,rpminspect-rpm,rpminspect-srpm,sonamecheck}] β€” the set of tools to use for package comparison. defaults to abipkgdiff,licensecheck,pkgdiff,rpmdiff,rpminspect-rpm,rpminspect-srpm,sonamecheck if available πŸ‘€
  • --outputtool {json,text} β€” the tool to use for formatting the rebase output. defaults to text
  • --versioneer {anitya,cpan,hackage,npmjs,pypi,rubygems} β€” the tool to use for determining the latest upstream version πŸ”
  • --versioneer-blacklist [{anitya,cpan,hackage,npmjs,pypi,rubygems}] β€” prevent the specified versioneers from being run 🚫
  • --spec-hook-blacklist [{commit-hash-updater,escape-macros,paths-to-rpm-macros,pypi-url-fix,replace-old-version,ruby-helper,typo-fix}] β€” prevent the specified spec hooks from being run
  • --build-log-hook-blacklist [{files}] β€” prevent the specified build log hooks from being run
  • --bugzilla-id BUG_ID β€” do a rebase based on Upstream Release Monitoring bugzilla πŸ›
  • --non-interactive β€” do not interact with the user. it's giving "i'm busy, don't talk to me" 😀
  • --favor-on-conflict {downstream,upstream,off} β€” favor downstream or upstream changes when conflicts appear βš”οΈ
  • --not-download-sources β€” do not download sources
  • -w, --keep-workspace β€” do not remove the workspace directory after finishing 🧹❌
  • --apply-changes β€” apply changes.patch after a successful rebase
  • --disable-inapplicable-patches β€” disable inapplicable patches in the rebased SPEC file
  • --skip-version-check β€” force the rebase even if the current version is newer than the requested version. bold move, love that πŸ’€
  • --update-sources β€” update the β€œsources” file and upload new sources to the lookaside cache
  • --skip-upload β€” skip uploading new sources to the lookaside cache
  • --force-build-log-hooks β€” enforce running of build log hooks (even in non-interactive mode)
  • --builds-nowait β€” do not wait for remote builds to finish ⏳
  • --build-tasks OLD_TASK,NEW_TASK β€” comma-separated remote build task ids
  • --builder-options BUILDER_OPTIONS β€” enable arbitrary local builder option(s). enclose BUILDER_OPTIONS in quotes to pass more than one πŸ—£οΈ
  • --srpm-builder-options SRPM_BUILDER_OPTIONS β€” enable arbitrary local srpm builder option(s). enclose SRPM_BUILDER_OPTIONS in quotes to pass more than one
  • --lookaside-cache-preset {fedpkg,centpkg,rhpkg,rhpkg-sha512} β€” use the specified lookaside cache configuration preset. defaults to fedpkg
  • --changelog-entry CHANGELOG_ENTRY β€” the text to use as the changelog entry. can contain RPM macros, which will be expanded πŸ“
  • --no-changelog-entry β€” do not add a changelog entry at all. nothing. silence. πŸ™ˆ
  • --config-file CONFIG_FILE β€” path to a configuration file. defaults to $XDG_CONFIG_HOME/rebase-helper.cfg βš™οΈ
  • -D 'MACRO EXPR', --define 'MACRO EXPR' β€” define an rpm macro. can be used multiple times πŸ”
  • --copr-project-permanent β€” make the created copr project permanent
  • --copr-project-frontpage β€” make the created copr project visible on the frontpage ✨
  • --copr-chroots COPR_CHROOTS β€” comma-separated list of chroots to create the copr project with
  • --get-old-build-from-koji β€” do not build old sources, download the latest build from Koji instead
  • --replace-old-version-with-macro β€” replace the old version string with %{version} instead of the new version string

πŸ”₯ EXIT STATUS πŸ”₯

this program returns 0 if successful, or non-zero if there was an error. simple as that, bestie. πŸ’―


πŸ¦‹ SEE ALSO πŸ¦‹

rpmbuild(8), mock(1), rpmdiff(1), pkgdiff(1), abipkgdiff(1), csmock(1)


🌸 Author 🌸

Petr HrÑček <phracek@redhat.com>, TomÑő Hozza <thozza@redhat.com>, Nikola Forró <nforro@redhat.com>, Frantiőek Nečas <fifinecas@seznam.cz>

2014-2019, Red Hat


okay that's the whole page, and like β€” we were on version 0.29, dated Jun 08, 2026, and it's literally still REBASE-HELPER(1) era. go rebase something, you absolute icon. slay. periodt. πŸ‘‘πŸ’…βœ¨

πŸ“¦ where this page comes from