Skip to content

Latest commit

 

History

History
119 lines (75 loc) · 4.63 KB

CONTRIBUTING.md

File metadata and controls

119 lines (75 loc) · 4.63 KB

Contributing to RegTool

First off, thanks for taking the time to contribute! 🎉

The following is a set of guidelines for contributing to RegTool. These are mostly guidelines, not rules. Use your best judgment, and feel free to propose changes to this document in a pull request.

How Can I Contribute?

Reporting Bugs

This section guides you through submitting a bug report for RegTool. Following these guidelines helps maintainers and the community understand your report, reproduce the behavior, and find related reports.

Before Submitting A Bug Report

  • Check the issue tracker to see if the problem has already been reported. If it has, you can add additional information to the existing issue.
  • Perform a cursory search to see if the problem has already been addressed in past issues.

How Do I Submit A (Good) Bug Report?

  • Use a clear and descriptive title for the issue to identify the problem.
  • Describe the exact steps which reproduce the problem in as many details as possible. Start with how you used the project, e.g. which command exactly you used in the terminal.
  • Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks.

Suggesting Enhancements

This section guides you through submitting an enhancement suggestion for RegTool, including completely new features and minor improvements to existing functionality.

Before Submitting An Enhancement Suggestion

  • Check the issue tracker to see if there's already a request for that feature. If there is, you can add a 👍 reaction to indicate your support.

How Do I Submit A (Good) Enhancement Suggestion?

  • Use a clear and descriptive title for the suggestion.
  • Provide a step-by-step description of the suggested enhancement in as much detail as possible.
  • Provide specific examples to demonstrate the steps. Include copy/pasteable snippets, which you use in those examples.
  • Explain why this enhancement would be useful to most RegTool users.

Pull Requests

The process described here has several goals:

  • Maintain RegTool's quality
  • Fix problems that are important to users
  • Engage the community in working toward the best possible RegTool
  • Enable a sustainable system for RegTool's maintainers to review contributions

Your First Pull Request

  • Fork the repository.
  • Clone your fork: git clone https://github.com/Sma1lboy/regtool.git
  • Create a branch: git checkout -b my-branch
  • Make your changes.
  • Push to your fork: git push origin my-branch
  • Create a pull request.

Guidelines for Pull Requests

  • Follow the project coding style.
  • Ensure your changes include tests to cover any new code.
  • Be sure all tests pass.
  • When you make very small changes to documentation, it may help to add [ci skip] to your commit message to skip running tests for that commit.

How to Clone, Build, and Run the Project

Prerequisites

Make sure you have the following tools installed:

  • Go (1.16 or higher)
  • Git

Clone the Repository

  1. Fork the repository on GitHub.

  2. Clone your fork to your local machine:

    git clone https://github.com/Sma1lboy/regtool.git
    cd regtool

Build the Project

  1. Run the following command to generate the initall.go file and build the project:

    make

Run the Project

  1. After building the project, you can run the executable:

    ./regtool

This will start RegTool with the default settings.

Style Guides

Git Commit Messages

  • Use the present tense ("Add feature" not "Added feature").
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...").
  • Limit the first line to 72 characters or less.
  • Reference issues and pull requests liberally after the first line.

Go Code Style

  • Follow the Effective Go guidelines.
  • Ensure that the code passes go fmt.

Code of Conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to cchen686@wisc.edu.

Thank you for considering contributing to RegTool!