Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
How to ask questions using GitHub

NC A&T GEEN 165 Help Procedure

GitHub Issues

  • Sometimes, you will need to ask questions about a program you are working on. Whether this is requesting clarification from a senior engineer about a project you have been assigned at your first job, or about your first Major Programming Assignment in GEEN 165!
  • Repository hosting services like GitHub will often have tools to facilitate this discussion about the project.
  • Keeping this discussion close to the actual code is important, because it saves both the development process as well as the reason why certain decisions were made, which is vital institutional memory for new developer to learn from, and more senior developers to look back on. Emailing questions is undesirable because the organization as a whole does not have access to this information, even though everybody could benefit from it.
  • On GitHub, these discussions can take place in Issues.

Creating an Issue

  • To create an issue, access the GitHub website, and find your repository. If you have trouble finding your repository, try looking on NC A&T's organization. GitHub screenshot showing Issues tab
  • Select the "Issues" tab and then select "New Issue". GitHub screenshot of "New Issue" button
  • The new issue screen will provide a box for "title" and for "description"
    • Title: should concisely summarize the issue, for example, "Unclear description for toString() method"
      • Your title should not have a non-descriptive title like "MP1 Question"
    • Description: this should describe the issue you are facing, with enough information for the TA to provide you with a solution.
      • GitHub supports Markdown, which allows quick text formatting tools appropriate for software discussion, see Mastering Markdown

Giving context to your issue

  • Oftentimes, your issue relates to specific functions in your code, and it would help to have this context when opening your issue.

  • Open the source file that you are having an issue with in GitHub. You are probably on a working branch, and will first need to checkout that branch before you will find your problem code. GitHub online branch switcher

  • Now, navigate to your source file, and click on the line number that you have a question about. The line should be highlighted yellow as shown. Highlighted source code line on GitHub

  • Click the three dot menu on the left hand side and select "Copy PermaLink"

  • Paste this link in the body of your issue to embed your line.

  • Finally, you will need to assign this issue to a TA, or multiple TA's, and we will get back to you as soon as possible.

    • Under the "Assignees" tabe to the right of the issue description, select the gear button and GitHub will suggest your TA's as possible assignees, you may click one or multiple to assign this issue to them. GitHub screenshot of Assignees tab

Closing an issue

  • Once a TA sees your issue, we will respond as soon as possible either requesting more information or providing an answer to your question.
  • Sometimes, issues will not have a straightforward answer, and lead to discussion, this is part of the development process, and a vital tool for a software developer.
  • Once your question has been answered to your satisfaction, you can choose to close the issue, indicating it has been successfully resolved, by selecting the close button in the comment box. GitHub screenshot showing issue close button
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment