With GitHub Discussions, the community for your project can create and participate in conversations within the project's repository or organization. Discussions empower a project's maintainers, contributors, and visitors to gather and accomplish the following goals in a central location, without third-party tools.
- Share announcements and information, gather feedback, plan, and make decisions
- Ask questions, discuss and answer the questions, and mark the discussions as answered
- Create polls to gauge community opinion
- Upvote discussions and comments to give higher visibility to ideas you find valuable
- Foster an inviting atmosphere for visitors and contributors to discuss goals, development, administration, and workflows
You might use repository discussions to discuss topics that are specific to the repository. If your project spans multiple repositories, you might use organization discussions to discuss topics that aren't specific to a single repository in your organization.
You don't need to close a discussion like you close an issue or a pull request.
If a repository administrator or project maintainer enables GitHub Discussions for a repository, anyone who has access to the repository can create and participate in discussions for the repository. If an organization owner enables GitHub Discussions for an organization, anyone who can view the source repository can create an organization discussion.
Repository administrators and project maintainers can manage discussions and discussion categories in a repository, and pin discussions to increase the visibility of the discussion. Moderators and collaborators can mark comments as answers, lock discussions, and convert issues to discussions. Similarly, for organization discussions, the role of a user in the source repository determines how a user can interact with organization discussions. For more information, see "Repository roles for an organization."
For more information about management of discussions, see "Managing discussions."
You can create polls in the polls category to gauge interest in new ideas and project direction. Anyone with read access to your repository can create polls, vote in polls, and view their results. Signed out users can view the results of polls in public repositories.
Polls require a question and at least two options. You can add a maximum of eight options and the options can contain a maximum of 128 characters.
Voters cannot change their vote. Editing a poll will reset any votes that have already been cast.
For more information on creating polls, see "Creating a poll."
You can organize discussions with categories and labels.
You can categorize discussions to help community members begin conversations in the right place, and to help community members find related discussions. All discussions must be created in a category. For repository discussions, people with maintain or admin permissions to the repository define the categories for discussions in that repository. For organization discussions, people with maintain or admin permissions to the source repository define the categories for discussions in that organization. Each category has a format: open-ended discussion, question and answer, or announcement. Each repository or organization can have up to 25 categories.
For discussions with a question/answer format, an individual comment within the discussion can be marked as the discussion's answer. GitHub will automatically recognize community members who contribute the most comments marked as answers to discussions with a question/answer format.
Maintainers can use categories with the announcement format to share information, releases, or events. To keep discussions in these categories focused on important updates, only people with maintain or admin permissions can create new discussions, but anyone can comment and reply.
For more information, see "Managing categories for discussions."
To organize discussions more granularly, you can apply labels. For example, you can use labels to indicate the status of a discussion to make triaging more efficient. Each repository has one shared set of labels for issues, pull requests, and discussions. For more information, see "Managing labels."
As a community member or maintainer, start a discussion to ask a question or discuss information that affects the community. For more information, see "Collaborating with maintainers using discussions."
Participate in a discussion to ask and answer questions, provide feedback, and engage with the project's community. For more information, see "Participating in a discussion."
You can spotlight discussions that contain important, useful, or exemplary conversations among members in the community. For more information, see "Managing discussions."
If an issue turns out to be a question or open-ended conversation instead of a work item to track and prioritize, you can convert the issue to a discussion. For more information, see "Moderating discussions."
You can share your feedback about GitHub Discussions with GitHub. To join the conversation, see GitHub Community discussions.