Quick Start - NOAA-EMC/WW3 GitHub Wiki
Quick Start for Developers
These are the essential things you need to know to get started with WW3:
Given you know what WW3 and GitHub, this is a quick-start guide for developers to forking, cloning and building WW3.
Note that the WW3 package has two parts that need to be combined if you want to run the regression tests: the GitHub repo itself and a binary data file bundle that needs to be obtained from our ftp site. To do that follow the steps below.
Step 1 Create a GitHub Account
- As a developer, you are required to use the GitHub workflow to make changes to the code,
- You are also required to work from a
fork
of a trusted repository, rather than itsclone
,- You can only create forks using the GitHub web interface,
- All subsequent development work is made off
feature
orbugfix
branches created from thedevelop
branch.
Step 2 Fork the WW3 Repo
- On
github.com
navigate tohttps://github.com/NOAA-EMC/WW3
or to one of the institutional reposhttps://github.com/<Institutional>/WW3
, - Locate and click the
fork
icon on the upper right-hand corner of the WW3 GitHub page.
Step 3 Clone your fork to a local copy
git clone https://github.com/<your username>/WW3
Step 4 Download and expand large/binary/netcdf files
cd WW3
sh model/bin/ww3_from_ftp.sh
Good Getting-Started Ideas
- Once you become familiar with the code and are ready to become a developer, read the Developer Guide and our Coding Best Practices,
- If you decide to start adding stuff to the WW3 repo before reading the Developer Guide (NOT recommended), we are assuming that you are committing to the following rules shared by our development community,
- We shall not put any large/binary/netcdf/etc files in the git repo! This makes the git repo large & slow. We use the ftp site for this (let us know if you need to add large/binary files as part of your contribution),
- See the wiki tab for more in-depth information on any topic.
- Use Issues to keep track of bugs and developments.
Frequently-Asked Questions
We will be regularly updating a FAQs page with answers to common questions.
For information on contributing development back to WW3, please see the Developer Guide