Skip to content
WrinklyNinja edited this page May 4, 2014 · 3 revisions

This page will guide anyone wishing to contribute to BOSS directly through the process of getting set up and making their first contribution. You don't need to be a project member to join in!

If you aren't already aware, it's worth noting that BOSS's main developers and maintainers have switched to working on LOOT instead of BOSS. It's up to you whether you want to join them, or stick with contributing to BOSS.

Getting Set Up

To get started, you'll need:

This guide will assume you're using GitHub for Windows (GFW).

Forking a Repository

To contribute changes, you will need to fork the repository that contains the file(s) you wish to edit. BOSS's repositories are listed here.

Forking lets you contribute to the project without worrying about making a mistake and breaking something, because your changes are checked by others before they get applied to the original repository.

Note: A fork needs to be kept in sync with its original repository. If you'd rather avoid the command line, you can delete your fork once your pull request has been accepted, then create a new fork when you next want to submit any changes.

Making Changes

Open the repository that contains the file(s) you want to edit in GFW, then click the gear icon in the upper right corner of the window and select "Open in explorer" to view the repository contents.

Edit the file(s) you want to make changes to using your text editor or appropriate tool of choice, then once you're done, save the file and switch back to GFW. There you can make a commit, sync and create a pull request as described in the forking guide linked to above.

If you're editing a masterlist, see the Masterlist Editing page for more information.

Joining the Team

Contributors can ask or be asked to join the BOSS team, which grants write access to the BOSS repositories, their issue trackers and wikis. Addition of new team members is done by the team admins, who base their decision on the quality of past contributions. If you would like to join the team, and feel comfortable with the workflow, contact a team member.

Contributing as a Team Member

Team members don't need to fork BOSS repositories, and can instead clone the original repositories and edit their files directly. This introduces a few additional points to ensure team members work well together:

  1. Make sure that your local repository is in sync with the online repository before and after you make any changes. This helps to avoid conflicts.
  2. It's always best to make commits in your own branch, and merge them into the repository's master branch when you're done working. For one-off commits the advantage is not so clear, but if you are making a set of commits with a common theme, a branch will help keep things organised.
  3. If you have committed changes to your local repository, and someone else synced their changes to the online repository after you last synced, then you may need to manually merge the changes. You'll know if you have to do this because GFW will give you an error message when you try to sync, in which case see Resolving Conflicts.
  4. You should also have a read of the Guidelines and Member Responsibilities pages to familiarise yourself with their contents.

Also be sure to go through the contents of Using The Issue Trackers.

Getting Help

If you have any problems or questions regarding anything relating to BOSS, feel free to ask team members questions: the Team Members page lists members' usernames on the Bethesda Softworks Forums, Nexus Forums and GitHub.

Questions are best asked of those who contribute to the relevant repository. For example, if you have a question that's specific to a game's masterlist, it's best to ask that masterlist's contributors. Repository contributors can be viewed by clicking on the contributor count in the bar near the top of the repository's page.