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.
If you’re new to GitHub, you may want to read through the GitHub Help pages on Setting up and managing your GitHub profile. Here are some of the highlights:
You do not need a separate work account and personal account. Instead, you can link multiple email addresses to the same GitHub account, which is almost always preferred.
Lawrence Livermore National Laboratory, @LLNL.
@LLNL email address (and any aliases) to your Email Settings page.
This will link any commits done via your Git identity to your GitHub account.
Membership in the @LLNL GitHub organization will soon require that 2FA has been enabled on your GitHub account. There are several options for configuring 2FA for your GitHub account:
Additional 2FA info:
If you are an employee at LLNL and have 2FA enabled, congratulations! You are eligible to join the LLNL GitHub organization.
Send an email, with your GitHub username included, to email@example.com from your
@llnl.gov email, requesting to be added to the organization.
After an administrator has added you to the organization, you will receive a notification email from GitHub.
Alternatively, once the invitation has been sent, you will see a notification banner at the top of github.com/llnl which you can use to accept the invitation.
Head over to the @LLNL People page and make your membership
Review the “Working with LLNL Repositories” information below.
Repositories within the LLNL organization are owned and managed by LLNL. Please do not create personal repositories here.
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:
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 firstname.lastname@example.org 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.
Alternatively, you can submit a pull request updating the
input_lists.json file, with your organization and/or repository names.
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.
There are many great “getting started” guides for GitHub. Here are a few we recommend:
The Federal government also provides some relevant information: