== Requesting Commit Rights == Once you have a track record as a maintainer (achieved by all-around good works such as submitting new ports with yourself as a maintainer, submitting bug fixes for existing ports, etc), we encourage you to apply for commit status so that you can easily keep your ports up to date and participate in keeping MacPorts such a strong community. If you feel you are ready for commit rights, please read the [http://guide.macports.org/#project.membership relevant documentation] that explains the membership application process. == Port Committer Responsibilities == 1. A commit affects one port 1. An exception to the rule above would be several Portfiles making use of some feature which requires an update 1. A new feature has been released which obsoletes previous hacks 1. A command or option is found to be broken 1. Combined updates for similar ports (wine and wine-devel) 1. Changing maintainer email address for your ports 1. Other, similar reasons 1. Make whitespace changes in a separate commit. To keep diffs readable for review whitespace changes should be done in a separate commit without any functional changes. 1. New top-level categories (those which are represented by directories directly beneath the repository root) need to be approved prior to adding; secondary categories (the second and later ones listed on the '''categories''' Portfile key) can be added when it makes sense (since these really only show under the web interface, and do not necessarily have a filesystem representation) 1. Port directory name has to match the ''name'' option in the Portfile 1. Run `port lint` before committing to be sure not to violate one of the guidelines 1. Commit messages should make clear what has been changed (see CommitMessages) 1. Under most circumstances, do not modify a port belonging to another maintainer; this is to be done via a Trac ticket, a GitHub pull request or by direct communication with the maintainer. Exceptions are: 1. When a port is broken (and the update should be just to fix the port, no other updates "while you're there") 1. When ''!nomaintainer@macports.org'' is the maintainer; this really means the port is unowned (feel free to take it over) 1. When ''!openmaintainer@macports.org'' is co-maintainer; this signifies that the primary maintainer has no prior objections to others changing it 1. When the maintainer says the update is okay and asks you to commit your update; in this case, be sure to note in the commit message that it was approved by the maintainer 1. When a ticket was already filed and you're making use of the [http://guide.macports.org/#project.update-policies.nonmaintainer maintainer timeout], note this fact in your commit message and add the ticket id for reference. == Who are you? == Add yourself to our list of contributors at MacPortsDevelopers. == Mailing Lists and Change Logs == Notification of changes is either via the [http://lists.macports.org/mailman/listinfo/macports-changes macports-changes] list or by subscribing to the RSS feeds provided by Trac (see the RSS feeds of the [/timeline Timeline view] and the [/log Git Repositories]). Note that you may customize the Timeline prior to subscribing to it, in order to control which types of information you are fed. In addition to getting an RSS feed of [wiki:TracTimeline general project events], you may also subscribe to changes to some [wiki:TracBrowser portion of the source tree] or to [wiki:TracQuery bug reports/tickets]. == Checking out repos for committing == See the [wiki:WorkingWithGit] wiki page. == Project Member Addresses == We prefer that those with commit rights use their @macports.org handle when listing themselves as a maintainer. This helps other committers to distinguish maintainers who are committers from those who are not. Several special maintainer addresses are used to distinguish additional meta-information about ports. Please see SpecialMaintainerAddresses. == Sending from your Project Member Address == In order to send mails from your @macports.org address, you need to configure your mail client with an additional account. The authentication credentials can be configured with the following steps: - Ensure your @macports.org email address has been added to your GitHub account and is verified on GitHub: https://github.com/settings/emails - Go to https://smtpselfservice.macports.org/, log in using GitHub, and set your SMTP password. - Configure your mail client to send mail from your @macports.org address: https://smtpselfservice.macports.org/settings If you are interested, the source code for the SMTP self service web app is also available: https://github.com/macports/macports-smtpselfservice