Introduction to XGC’s Git Workflow

The XGC codes are organized in three separate, private repositories on Github under the PrincetonUniversity organization (abbreviated PU in the remainder of this document):

  • PrincetonUniversity/XGC-Devel: The current, actively developed versions of the XGC code (XGC1, XGCa, XGCs). All XGC developers use this repository as basis for their work.

  • PrincetonUniversity/XGC-User: A read-only (except for repo admins) repository with regularly updated releases of XGC-Devel. All code in XGC-User is stable and safe for use by inexperienced XGC users. This repo is intended for pure XGC users (who do not develop code) and new XGC developers for the purpose of training.

  • PrincetonUniversity/XGC-Full-f: Legacy code that has been developed in past SciDAC funding periods (e.g. XGC0, the full-f version of XGC1). This legacy code will undergo only modest development and maintenance work.

Members of XGC-Users have access to the XGC-User repository, and members of XGC-Full-f Users have access to the XGC-Full-f repository. The teams XGC Developers and XGC Admins are subgroups of the XGC-Users team. Members of XGC Developers have read-access to the XGC-Devel repository, and members of XGC Admins have administrator privileges on all three XGC repositories.

Repository Structure