{
    "mode": "man",
    "parameter": "debrelease",
    "section": "1",
    "url": "https://www.chedong.com/phpMan.php/man/debrelease/1/json",
    "generated": "2026-06-10T16:14:04Z",
    "synopsis": "debrelease [debrelease options] [dupload/dput options]",
    "sections": {
        "NAME": {
            "content": "debrelease - a wrapper around dupload or dput\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "debrelease [debrelease options] [dupload/dput options]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "debrelease  is  a simple wrapper around dupload or dput.  It is called from within the source\ncode tree of a package, and figures out the current version of a package.  It then looks  for\nthe  corresponding  .changes file (which lists the files needed to upload in order to release\nthe package) in the parent directory of the source code tree and calls dupload or  dput  with\nthe .changes file as parameter in order to perform the actual uploading.\n\nOptions  may be given to debrelease; except for the ones listed below, they are passed on un‐\nchanged to dupload or dput.  The devscripts configuration files are also read  by  debrelease\nas described below.\n",
            "subsections": [
                {
                    "name": "Directory name checking",
                    "content": "In common with several other scripts in the devscripts package, debrelease will climb the di‐\nrectory tree until it finds a debian/changelog file.  As  a  safeguard  against  stray  files\ncausing  potential  problems,  it will examine the name of the parent directory once it finds\nthe debian/changelog file, and check that the directory name corresponds to the package name.\nPrecisely   how  it  does  this  is  controlled  by  two  configuration  file  variables  DE‐‐\nVSCRIPTSCHECKDIRNAMELEVEL and DEVSCRIPTSCHECKDIRNAMEREGEX, and their corresponding com‐\nmand-line options --check-dirname-level and --check-dirname-regex.\n\nDEVSCRIPTSCHECKDIRNAMELEVEL can take the following values:\n\n0      Never check the directory name.\n\n1      Only check the directory name if we have had to change directory in our search for de‐\nbian/changelog.  This is the default behaviour.\n\n2      Always check the directory name.\n\nThe directory name is checked by testing whether the current directory name (as determined by\npwd(1))    matches    the    regex    given    by   the   configuration   file   option   DE‐‐\nVSCRIPTSCHECKDIRNAMEREGEX or by the command line option --check-dirname-regex regex.  Here\nregex  is  a  Perl regex (see perlre(3perl)), which will be anchored at the beginning and the\nend.  If regex contains a '/', then it must match the full directory path.  If not,  then  it\nmust match the full directory name.  If regex contains the string ´PACKAGE', this will be re‐\nplaced by the source package name, as determined from the changelog.  The default  value  for\nthe regex is: ´PACKAGE(-.+)?', thus matching directory names such as PACKAGE and PACKAGE-ver‐\nsion.\n"
                }
            ]
        },
        "OPTIONS": {
            "content": "--dupload, --dput\nThis specifies which uploader program to use; the default is dupload.\n",
            "subsections": [
                {
                    "name": "-S",
                    "content": ".changes file is present, then this source-only .changes file will be uploaded instead\nof an arch-specific one.\n",
                    "flag": "-S"
                },
                {
                    "name": "-a -t",
                    "content": "See dpkg-architecture(1) for a description of these options.  They affect  the  search\nfor  the .changes file.  They are provided to mimic the behaviour of dpkg-buildpackage\nwhen determining the name of the .changes file.  If a plain -t is given, it  is  taken\nto  be  the dupload host-specifying option, and therefore signifies the end of the de‐‐\nbrelease-specific options.\n",
                    "flag": "-t"
                },
                {
                    "name": "--multi",
                    "content": "Multiarch .changes mode: This signifies that debrelease should  use  the  most  recent\nfile  with the name pattern packageversion*+*.changes as the .changes file, allowing\nfor the .changes files produced by dpkg-cross.\n\n--debs-dir directory\nLook for the .changes and .deb files in directory instead of the parent of the  source\ndirectory.   This  should  either  be  an  absolute path or relative to the top of the\nsource directory.\n\n--check-dirname-level N\nSee the above section Directory name checking for an explanation of this option.\n\n--check-dirname-regex regex\nSee the above section Directory name checking for an explanation of this option.\n\n--no-conf, --noconf\nDo not read any configuration files.  This can only be used as the first option  given\non the command-line.\n\n--help, -h\nDisplay a help message and exit successfully.\n",
                    "long": "--multi"
                },
                {
                    "name": "--version",
                    "content": "Display version and copyright information and exit successfully.\n",
                    "long": "--version"
                }
            ]
        },
        "CONFIGURATION VARIABLES": {
            "content": "The  two configuration files /etc/devscripts.conf and ~/.devscripts are sourced in that order\nto set configuration variables.  Command line options can be used to  override  configuration\nfile  settings.   Environment  variable settings are ignored for this purpose.  The currently\nrecognised variables are:\n\nDEBRELEASEUPLOADER\nThe currently recognised values are dupload and dput, and it specifies which  uploader\nprogram  should  be used.  It corresponds to the --dupload and --dput command line op‐\ntions.\n\nDEBRELEASEDEBSDIR\nThis specifies the directory in which to look for the .changes and .deb files, and  is\neither  an  absolute path or relative to the top of the source tree.  This corresponds\nto the --debs-dir command line option.  This directive could be used, for example,  if\nyou always use pbuilder or svn-buildpackage to build your packages.  Note that it also\naffects debc(1) and debi(1).\n\nDEVSCRIPTSCHECKDIRNAMELEVEL, DEVSCRIPTSCHECKDIRNAMEREGEX\nSee the above section Directory name checking for an explanation of  these  variables.\nNote  that  these  are package-wide configuration variables, and will therefore affect\nall devscripts scripts which check their value, as described in their respective  man‐\npages and in devscripts.conf(5).\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "dput(1), dupload(1), devscripts.conf(5)\n",
            "subsections": []
        },
        "AUTHOR": {
            "content": "Julian  Gilbey  <jdg@debian.org>,  based  on the original release script by Christoph Lameter\n<clameter@debian.org>.\n\n\n\nDEBIAN                                    Debian Utilities                             DEBRELEASE(1)",
            "subsections": []
        }
    },
    "summary": "debrelease - a wrapper around dupload or dput",
    "flags": [
        {
            "flag": "-S",
            "long": null,
            "arg": null,
            "description": ".changes file is present, then this source-only .changes file will be uploaded instead of an arch-specific one."
        },
        {
            "flag": "-t",
            "long": null,
            "arg": null,
            "description": "See dpkg-architecture(1) for a description of these options. They affect the search for the .changes file. They are provided to mimic the behaviour of dpkg-buildpackage when determining the name of the .changes file. If a plain -t is given, it is taken to be the dupload host-specifying option, and therefore signifies the end of the de‐‐ brelease-specific options."
        },
        {
            "flag": "",
            "long": "--multi",
            "arg": null,
            "description": "Multiarch .changes mode: This signifies that debrelease should use the most recent file with the name pattern packageversion*+*.changes as the .changes file, allowing for the .changes files produced by dpkg-cross. --debs-dir directory Look for the .changes and .deb files in directory instead of the parent of the source directory. This should either be an absolute path or relative to the top of the source directory. --check-dirname-level N See the above section Directory name checking for an explanation of this option. --check-dirname-regex regex See the above section Directory name checking for an explanation of this option. --no-conf, --noconf Do not read any configuration files. This can only be used as the first option given on the command-line. --help, -h Display a help message and exit successfully."
        },
        {
            "flag": "",
            "long": "--version",
            "arg": null,
            "description": "Display version and copyright information and exit successfully."
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "dput",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/dput/1/json"
        },
        {
            "name": "dupload",
            "section": "1",
            "url": "https://www.chedong.com/phpMan.php/man/dupload/1/json"
        },
        {
            "name": "devscripts.conf",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/devscripts.conf/5/json"
        }
    ]
}