特殊:Badtitle/NS101:SyncRequestProcess
![]() |
文章出处: |
{{#if: | {{{2}}} | https://wiki.ubuntu.com/SyncRequestProcess }} |
![]() |
点击翻译: |
English {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/af | • {{#if: UbuntuWiki:SyncRequestProcess|Afrikaans| [[::SyncRequestProcess/af|Afrikaans]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ar | • {{#if: UbuntuWiki:SyncRequestProcess|العربية| [[::SyncRequestProcess/ar|العربية]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/az | • {{#if: UbuntuWiki:SyncRequestProcess|azərbaycanca| [[::SyncRequestProcess/az|azərbaycanca]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/bcc | • {{#if: UbuntuWiki:SyncRequestProcess|جهلسری بلوچی| [[::SyncRequestProcess/bcc|جهلسری بلوچی]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/bg | • {{#if: UbuntuWiki:SyncRequestProcess|български| [[::SyncRequestProcess/bg|български]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/br | • {{#if: UbuntuWiki:SyncRequestProcess|brezhoneg| [[::SyncRequestProcess/br|brezhoneg]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ca | • {{#if: UbuntuWiki:SyncRequestProcess|català| [[::SyncRequestProcess/ca|català]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/cs | • {{#if: UbuntuWiki:SyncRequestProcess|čeština| [[::SyncRequestProcess/cs|čeština]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/de | • {{#if: UbuntuWiki:SyncRequestProcess|Deutsch| [[::SyncRequestProcess/de|Deutsch]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/el | • {{#if: UbuntuWiki:SyncRequestProcess|Ελληνικά| [[::SyncRequestProcess/el|Ελληνικά]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/es | • {{#if: UbuntuWiki:SyncRequestProcess|español| [[::SyncRequestProcess/es|español]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/fa | • {{#if: UbuntuWiki:SyncRequestProcess|فارسی| [[::SyncRequestProcess/fa|فارسی]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/fi | • {{#if: UbuntuWiki:SyncRequestProcess|suomi| [[::SyncRequestProcess/fi|suomi]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/fr | • {{#if: UbuntuWiki:SyncRequestProcess|français| [[::SyncRequestProcess/fr|français]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/gu | • {{#if: UbuntuWiki:SyncRequestProcess|ગુજરાતી| [[::SyncRequestProcess/gu|ગુજરાતી]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/he | • {{#if: UbuntuWiki:SyncRequestProcess|עברית| [[::SyncRequestProcess/he|עברית]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/hu | • {{#if: UbuntuWiki:SyncRequestProcess|magyar| [[::SyncRequestProcess/hu|magyar]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/id | • {{#if: UbuntuWiki:SyncRequestProcess|Bahasa Indonesia| [[::SyncRequestProcess/id|Bahasa Indonesia]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/it | • {{#if: UbuntuWiki:SyncRequestProcess|italiano| [[::SyncRequestProcess/it|italiano]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ja | • {{#if: UbuntuWiki:SyncRequestProcess|日本語| [[::SyncRequestProcess/ja|日本語]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ko | • {{#if: UbuntuWiki:SyncRequestProcess|한국어| [[::SyncRequestProcess/ko|한국어]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ksh | • {{#if: UbuntuWiki:SyncRequestProcess|Ripoarisch| [[::SyncRequestProcess/ksh|Ripoarisch]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/mr | • {{#if: UbuntuWiki:SyncRequestProcess|मराठी| [[::SyncRequestProcess/mr|मराठी]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ms | • {{#if: UbuntuWiki:SyncRequestProcess|Bahasa Melayu| [[::SyncRequestProcess/ms|Bahasa Melayu]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/nl | • {{#if: UbuntuWiki:SyncRequestProcess|Nederlands| [[::SyncRequestProcess/nl|Nederlands]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/no | • {{#if: UbuntuWiki:SyncRequestProcess|norsk| [[::SyncRequestProcess/no|norsk]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/oc | • {{#if: UbuntuWiki:SyncRequestProcess|occitan| [[::SyncRequestProcess/oc|occitan]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/pl | • {{#if: UbuntuWiki:SyncRequestProcess|polski| [[::SyncRequestProcess/pl|polski]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/pt | • {{#if: UbuntuWiki:SyncRequestProcess|português| [[::SyncRequestProcess/pt|português]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ro | • {{#if: UbuntuWiki:SyncRequestProcess|română| [[::SyncRequestProcess/ro|română]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/ru | • {{#if: UbuntuWiki:SyncRequestProcess|русский| [[::SyncRequestProcess/ru|русский]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/si | • {{#if: UbuntuWiki:SyncRequestProcess|සිංහල| [[::SyncRequestProcess/si|සිංහල]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/sq | • {{#if: UbuntuWiki:SyncRequestProcess|shqip| [[::SyncRequestProcess/sq|shqip]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/sr | • {{#if: UbuntuWiki:SyncRequestProcess|српски / srpski| [[::SyncRequestProcess/sr|српски / srpski]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/sv | • {{#if: UbuntuWiki:SyncRequestProcess|svenska| [[::SyncRequestProcess/sv|svenska]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/th | • {{#if: UbuntuWiki:SyncRequestProcess|ไทย| [[::SyncRequestProcess/th|ไทย]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/tr | • {{#if: UbuntuWiki:SyncRequestProcess|Türkçe| [[::SyncRequestProcess/tr|Türkçe]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/vi | • {{#if: UbuntuWiki:SyncRequestProcess|Tiếng Việt| [[::SyncRequestProcess/vi|Tiếng Việt]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/yue | • {{#if: UbuntuWiki:SyncRequestProcess|粵語| [[::SyncRequestProcess/yue|粵語]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/zh | • {{#if: UbuntuWiki:SyncRequestProcess|中文| [[::SyncRequestProcess/zh|中文]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/zh-hans | • {{#if: UbuntuWiki:SyncRequestProcess|中文(简体)| [[::SyncRequestProcess/zh-hans|中文(简体)]]}}|}} {{#ifexist: {{#if: UbuntuWiki:SyncRequestProcess | UbuntuWiki:SyncRequestProcess | {{#if: | :}}SyncRequestProcess}}/zh-hant | • {{#if: UbuntuWiki:SyncRequestProcess|中文(繁體)| [[::SyncRequestProcess/zh-hant|中文(繁體)]]}}|}} |
{{#ifeq:UbuntuWiki:SyncRequestProcess|:SyncRequestProcess|请不要直接编辑翻译本页,本页将定期与来源同步。}} |
{{#ifexist: :SyncRequestProcess/zh | | {{#ifexist: SyncRequestProcess/zh | | {{#ifeq: {{#titleparts:SyncRequestProcess|1|-1|}} | zh | | }} }} }} {{#ifeq: {{#titleparts:SyncRequestProcess|1|-1|}} | zh | | }}
Before requesting a sync
Syncs (like uploads) cannot be reversed or undone. ALWAYS thoroughly check a package before asking for a sync. In particular, if there are Ubuntu changes in the current package, you must ensure the Ubuntu changes have been merged or are no longer relevant.
After UpstreamVersionFreeze, syncs of a newer upstream version require a freeze exception.
You should always sync a package rather than upload the unmodified source by hand, as it is safer and more accurate. If you know you will upload modified source immediately, modify the package and make an -<n>ubuntu<n> upload rather than requesting a sync. However, be sure to always use the exact same .orig.tar.gz as Debian (or whomever).
After DebianImportFreeze, it's a good idea to review the Debian changes to make sure that the fixes will improve Ubuntu: some changes (maintainer change, new uploader, NMU acknowledgement with no additional fixes, etc.) may be better left for the next cycle.
Packages can be synced from any Debian-format package archive, i.e. something with a Sources file.
If the version in Ubuntu is a -0ubuntu* version, i.e. it introduces a new upstream that Debian doesn't have it is important to check that the md5sum of the .orig.tar.gz in the Ubuntu archive matches the md5sum of the tarball in the Debian archive (or wherever the sync is from). If it does not match then you risk problems where the source package cannot be unpacked, or where it is not even valid in the first place. If it does not match then you will have to do a "manual sync."
Content of a sync request
When requesting a 'sync', please include the following information:
- Source package name
- Source package version number to sync
- Where to sync from (e.g. 'Debian sid main', 'Debian experimental non-free')
- If there are Ubuntu changes apart from `debian/changelog` or if UpstreamVersionFreeze is in effect:
- A copy of the entries from debian/changelog corresponding to the changes relative to the current version in Ubuntu
- If there are Ubuntu changes:
- a description of each of the Ubuntu changes (a bullet point list is fine, but copies of debian/changelog aren't)
- a brief explanation of why each one may be dropped (e.g., it's been merged into Debian, is no longer appropriate, etc.)
- an explicit confirmation that the Ubuntu changes should be overridden
Submitting your request
To request a sync, file a bug in Launchpad with the above information. Once the bug is complete and correct, if you are not an Ubuntu developer, subscribe (NOT assign) `ubuntu-main-sponsors` for packages in Main/Restricted and `ubuntu-universe-sponsors` for packages in Universe/Multiverse. They will review the request and subscribe `ubuntu-archive`. Ubuntu developers should subscribe (NOT assign) the `ubuntu-archive` team to the bug directly. This team will process the request and close the bug when it is complete. Please only subscribe ubuntu-archive to a bug once you have a clear action for the archive team to perform. Do not ask ubuntu-archive to help you decide what to do.
Do not change the Status of the bug as package sponsors and the archive administrators use this field. Do track the status of the sync. You will be notified via bug mail when the package has been published. Once you see (in Launchpad) that the updated packaged has been successfully built, if the archive admin has not, then you may mark the bug Status as 'Fix Released' (primarily for Universe/Multiverse).
requestsync
Martin Pitt and Steve Kowalik have written requestsync, a script to file sync requests which is available in the ubuntu-dev-tools package.
requestsync looks at the versions of the source package in Debian and Ubuntu, prompts for an explanation of why the Ubuntu changes (if there are any) should be dropped, downloads the changelog entry from packages.debian.org, and then prompts for your GPG passphrase so it can sign the mail and send it off, which files a sync request in the form of a bug report in Launchpad.
The syntax to call the script is:
requestsync [-n|-s] <source package> <target release> [base version]
Where:
-n
Specifies that the package is a new package, and requestsync should not attempt to look it up in Ubuntu since it will not exist.
-s
Specifies that you require sponsorship. You need this option if you are not a member of ubuntu-dev for universe or multiverse, or ubuntu-core-dev for main or restricted.
<source package>
This is the source package that you would like to be synced from Debian.
<target release>
This is the release that you would like the source package to be synced into. This should always be the latest development release of Ubuntu.
[base version]
In some cases, the base version (where the Ubuntu package started differing from the Debian package) can not be automatically determined. Specify this option in this case.
sync bug list
Before submitting a sync request, please check that a similar request has not been filed already. You can see all bugs to which the archive-admins have been subscribed here.