Dakota Git Description
The authoritative upstream Git repositories for Dakota core, and its open source third-party libraries, are hosted on SNL-internal Gitlab repositories. They are mirrored to repositories at https://github.com/snl-dakota, which is used here to describe the overall structure. The top-level repository includes submodules for public TPLs external, pecos, and surfpack. It also has submodules for SNL-specific (private) content which provide extension points for other external sites to provide their own site-specific packages.
Dakota Repository Structure
| Local clone path | Upstream URL | Notes | 
|---|---|---|
| dakota/ | ||
| dakota/packages/external | ../dakota-packages (https://github.com/snl-dakota/dakota-packages) | Public, relative to facilitate HTTPS vs. Git+SSH | 
| dakota/packages/pecos | ../pecos (https://github.com/snl-dakota/pecos) | Public, relative to facilitate HTTPS vs. Git+SSH | 
| dakota/packages/surfpack | ../surfpack (https://github.com/snl-dakota/surfpack) | Public, relative to facilitate HTTPS vs. Git+SSH | 
| dakota/dakota-examples | ../dakota-examples (https://github.com/snl-dakota/dakota-examples) | Public, relative to facilitate HTTPS vs. Git+SSH | 
| 
 | 
 | 
 | 
Most repositories have a “devel” branch into which changes are integrated (dakota-examples only uses master and topic branches). An automated process tests changes made to the devel branches before pushing these to the more stable “master” branches.

