FAQ: How do I submit a pull request with an innovation for physics in CCPP?

Submitted by dom.heinzeller on Wed, 09/02/2020 - 17:14

How do I submit a pull request with an innovation for physics in CCPP?

To propose changes for inclusion into the authoritative ccpp-physics repository, you need to create a pull request (PR).

  1. Navigate to http://github.com/YOUR_GITHUB_USERNAME/ccpp-physics and click on ‘pull request’
  2. Click on ‘new pull request’, then set base  repository to ‘NCAR/ccpp-physics’ and base to ‘master’, head repository to ‘YOUR_GITHUB_USERNAME’, compare to ‘YOUR_DEVELOP_BRANCH’. Click on ‘create pull request’
  3. Add a descriptive title and short description in the text boxes
  4. Click on ‘Create pull request’. Note that creating a “draft” pull request is possible using the dropdown menu on this button. This can be useful if you’re still working or testing code, but would like to share your work with the repository managers. 

If your development also requires changes in other repositories, you must open PRs in those repositories as well. In the PR message for each repository, please note the associated PRs submitted to other repositories. Additional information on how to submit PRs that involve the CCPP use in the UFS Weather Model is available in this wiki page.

Several people (aka CODEOWNERS) are automatically added to the list of reviewers on the right hand side. If others should be reviewing the code, click on the “reviewers” item on the right hand side and enter their GitHub usernames.

Once the PR has been approved, the change is merged to master by one of the code owners. If there are pending conflicts, this means that the code is not up to date with the trunk. To resolve those, pull the target branch from upstream, solve the conflicts and push the changes to the branch on your fork (this also updates the PR).