Skip to content
This repository has been archived by the owner on Aug 13, 2024. It is now read-only.

Latest commit

 

History

History
140 lines (99 loc) · 9.56 KB

CONTRIBUTING.md

File metadata and controls

140 lines (99 loc) · 9.56 KB

Contributing to openassistants

Welcome to the openassistants contributing page. Please follow the guidelines below when making contributions to the project. All effort is greatly appreciated!

Table of Contents

  • Search Existing Issues: Before submitting a bug report, ensure it has not already been reported by searching existing issues.
  • Create New Issue: If no issues address the bug discovered, create a new issue
  • Describe the Bug: Provide a clear description of the bug, including steps to reproduce, and what the expected outcome should be.
  • Include Details: Specify the version of openassistants you're using, your operating system, and any relevant environment setup details.

Enhancement Requests

  • Propose New Features: Clearly articulate your suggestions for new features or improvements, explaining how they would benefit the project.
  • Provide Rationale: Offer reasons why this enhancement would be valuable to the project.

Reporting Process

  • Use Clear Titles: When creating an issue, use a descriptive and clear title.
  • Submit on GitHub: Report bugs and enhancements via the project's GitHub issues page. Tag your issue appropriately, whether as a bug or an enhancement.
  • Explore the Issue Tracker: Browse the GitHub issue tracker to find issues that interest you. Look for tags to find issues you can contribute towards in your area of interest.
  • Understand the Issue: Before picking an issue, ensure you understand the requirements and ask for clarification if needed.
  • Comment on the Issue: Once you decide on an issue, comment on it, expressing your intention to work on it. This helps avoid multiple people working on the same issue.
  • Seek Guidance: If you're new or unsure, don't hesitate to ask maintainers or the community for help or guidance.
  • Create a Fork: Start by forking the repository.
  • Create a Feature Branch: Make a new branch for your changes.
  • Implement Changes: Work on your feature or bugfix in your branch.
  • Commit Changes: Make concise and meaningful commit messages.
  • Sync with Main Branch: Regularly sync your branch with the main branch to stay updated.
  • Run Tests: Ensure your changes pass all tests.
  • Create Pull Request: Once ready, submit a pull request to the main repository.
  • Describe Your Changes: In the pull request, clearly describe what you've done.
  • Respond to Feedback: Be responsive to feedback from project maintainers.
  • Understand Version Control: Familiarize yourself with the basics of version control systems, particularly Git, which is crucial for managing changes in the project.
  • Learn Git Basics: Gain proficiency in Git commands like clone, branch, commit, push, pull, and merge.
  • Use GitHub Effectively: Learn how to navigate and use GitHub for managing your work, submitting pull requests, and collaborating with others.
  • Follow Best Practices: Adopt best practices for version control like committing small changes, writing meaningful commit messages, and keeping branches focused and short-lived.
  • Install Git: Download and install Git from git-scm.com.
  • Configure Git: Set up your user name and email using git config.
  • Initialize a Repository: Use git init to start a new repository.
  • Clone a Repository: Use git clone [url] to clone an existing repository.
  • Learn Basic Commands: Familiarize yourself with basic commands like git add, git commit, git status, and git push.
  • Read Git Documentation: For a comprehensive understanding, refer to the Pro Git book, available online for free.
  • Navigate to the Repository: Visit the openassistants GitHub repository.
  • Fork the Repository: Click the "Fork" button located at the top-right of the repository page. This action will create a personal copy of the repository in your own GitHub account. Creating a fork
  • Clone Your Fork: After forking, clone your fork to your local machine using git clone [your-fork-url].
  • Set Upstream Remote: Configure the original 'openassistants' repository as an upstream remote using git remote add upstream https://github.com/definitive-io/openassistants.git.
  • Switch to the Base Branch: Ensure you are on the main branch using git checkout main.
  • Pull Latest Changes: Update the main branch with git pull upstream main.
  • Create a New Branch: Create a new branch for your feature or bug fix using git checkout -b your-branch-name.
  • Keep Branches Focused: Make sure your branch focuses on a single feature or bug fix for clarity and easier review.
  • Understand Codebase: Familiarize yourself with the structure and style of the 'openassistants' codebase.
  • Write Clean Code: Follow coding standards and guidelines for readability and maintainability.
  • Implement Changes: Focus on making changes that address the issue or add the proposed feature.
  • Test Your Changes: Ensure your code works as intended and does not introduce new issues.
  • Document Your Changes: Add comments and documentation where necessary to explain your modifications.
  • Stage Your Changes: Use git add to stage the changes you've made.
  • Commit: Commit your changes with git commit -m 'Your informative commit message'.
  • Pull Latest Changes: Before pushing, pull the latest changes from upstream with git pull upstream main.
  • Resolve Conflicts: If there are any conflicts, resolve them before proceeding.
  • Push to Your Fork: Push your changes to your fork with git push origin your-branch-name.
  • Review Changes: Before submitting a pull request, review your changes to ensure they address the issue appropriately.
  • Create Pull Request: Go to your fork on GitHub and click the "New pull request" button. Choose your feature branch and the main repository's main branch as the base.
  • Provide Details: In the pull request description, clearly explain your changes and link to the issue if applicable.
  • Wait for Review: Once submitted, wait for the project maintainers to review your pull request. They may request changes.
  • Make Requested Changes: If changes are requested, make them in your branch and push the updates.
  • Review Feedback: Carefully read any feedback from the project maintainers.
  • Make Changes: Implement the necessary changes in your local branch.
  • Commit and Push: Commit these changes and push them to your branch on GitHub.
  • Inform Reviewers: Once the updates are pushed, inform the reviewers, preferably with a comment on the pull request.
  • Stay Responsive: Be prepared to make further adjustments based on additional feedback.
  • Stay Updated: Regularly pull the latest changes from the main repository to your local development environment.
  • Manage Dependencies: Update any dependencies as per the project's requirements.
  • Test Locally: Regularly run tests to ensure your environment reflects the project's current state.
  • Seek Help if Needed: If you encounter issues while updating, don't hesitate to ask for assistance from the community or maintainers.
  • Follow Project Guidelines: Adhere to the coding style and contribution guidelines of the project.
  • Keep Changes Focused: Ensure your pull request addresses a single issue or feature.
  • Write Clear Descriptions: Clearly describe the purpose of your changes and how they impact the project.
  • Include Tests: Add tests that validate your changes, if applicable.
  • Be Patient and Responsive: Be patient for reviews and responsive to feedback and questions.