If you’re new to GitHub and open source in general, figuring out how to get set up can be a challenge. This guide is for getting started with GitHub, and specifically targets LLNL developers working in the LLNL GitHub organization.
Note that the YubiKey deployment (called “MyPass” at LLNL) is in its pilot phase, and not all users have them yet.
YubiKeys are the preferred 2FA option, due to the security of the YubiKey hardware tokens. If you have been issued your LLNL YubiKeys they are highly recommended for securing your GitHub (and other) accounts which support them.
You will also have the option during 2FA to generate and save a list of recovery codes to get into your account in the event you lose access to one of your 2FA methods. This is highly recommended, and the recovery codes should be stored someplace safe. Some options for storing your recovery codes include:
Printing the codes and storing them in a safe place in your office.
Storing the recovery codes in a password manager that you might be using.
We recommend that you set up MULTIPLE 2FA options. This can protect your access to your account in the event that you lose access to one of your authenticators.
Before content is placed into an LLNL GitHub.com repository, it should be reviewed and released via the IM process. Once released, an appropriate open source license and LLNL-CODE- release number should be provided and included in the repository.
Remember that these repositories are hosted on GitHub servers, NOT LLNL servers, and content placed in them should be limited to “email like” communications. That means:
NO Export Controlled
NO Official Use Only (OUO)
NO Health Insurance Portability and Accountability Act (HIPAA)
NO Personally Identifiable Information (PII)
NO NDA or vendor-proprietary information
NO Unclassified Controlled Information (UCI)
NO Unclassified Controlled Nuclear Information (UCNI)
When in doubt, contact a Derivative Classifier (DC) and/or IM for further guidance.
Now that your project is on GitHub, make sure users and contributors can find it! There are several ways to do this. Contact email@example.com for help with the following tasks:
Include meaningful metadata (description and topic tags) in your repository. Example: Spack lists several topic tags below a one-sentence description.
Start with our list of recommended, standardized topics.
See helpful hints on GitHub’s topic help page. Add tags relevant to your project’s programming language, platforms, and more (e.g., Python, HPC, Linux).
Let Twitter followers know your project is available on GitHub.
Publicize any outreach activities or major milestones related to your project. Examples: You have a paper/poster/presentation accepted at a conference; you’re hosting a workshop or webinar; your project is nominated for an award; or you’re speaking on a podcast or guest blogging.
Make sure your repository is included on this website’s home page and full catalog. If you’ve set up your repository within the LLNL organization, you don’t need to take any action; it will automatically appear after the next data update.
If your repository exists under a different organization, you can move it to LLNL by selecting “Transfer Ownership” under Settings.
If you have a project logo, please follow the instructions for naming and uploading the file. If your repo is part of a non-LLNL organization that has its own avatar, that image will automatically display next to the repo name in the catalog, unless superseded by a repo-specific logo.