U Exam Questions 1 Flashcards

1
Q

Which permission levels exist for a GitHub personal account repository?

a. the repository owner, collaborators and team maintainers

b. the repository owner and moderator

c. the repository owner, collaborators and viewers

A

b. the repository owner and collaborators

Overall explanation

A repository owned by a personal account has two permission levels: the repository owner and collaborators.

Wrong Answers

There is not a viewer permission level for personal account repositories on GitHub. Collaborators can’t have read-only access to repositories owned by a personal account.

There is not a team maintainer permission level for personal account repositories on GitHub. Team maintainers are only available for organization accounts.

There is not a moderator permission level for personal account repositories on GitHub. The Moderator role is only available for organization accounts.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Who can use the Insights feature for Projects?

a. only users with admin access to a project

b. users with write or admin access to a project

c. users with GitHub free or legacy plans

d. anyone who can view a project, regardless of access level

A

a. only users with admin access to a project

Overall explanation

The only users who can use the Insights feature for Projects are those with write or admin access to the specific project.

WRONG ANSWERS:

Being able to use the Insights feature does not have to do with the type of GitHub plan the user has, it just has to do with access levels to the project

People with just viewing access cannot use the Insights feature since they do not have write or admin access on the project

Although users with admin access can use Insights, it also includes users with write access

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Which of the following is NOT a built-in metadata option to help build a richer view of item attributes?

a. Assignee

b. Labels

c. Milestone

d. Timestamp

A

d. Timestamp

Overall explanation

Although a user could add a timestamp field, it is not one of the built-in metadata that GitHub provides. A user would have to add it to their project manually if it is needed in the type of project they are creating

WRONG ANSWERS:

Milestones are one of the built-in metadata that GitHub provides. They track progress on groups of issues or pull requests in a repository

Labels are another built-in metadata that GitHub provides, they are used to classify issues, pull requests, and discussions

Assignees are also a built-in metadata that GitHub provides

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

As a project manager using GitHub, you notice that your team’s project board lacks clear categorization for issues and tasks, and you want to to enhance organization and communication. How can utilizing labels in GitHub Projects benefit your team in terms of project management?

a. labels allow you to customize the appearance of the project board, improving its visual appeal

b. labels enable real-time collaboration on code editing within the GitHub repository

c. labels provide a way to prioritize and categorize issues, making it easier to track and manage tasks on the project board

d. labels are primarily for assigning access permissions to team members based on their roles

A

c. labels provide a way to prioritize and categorize issues, making it easier to track and manage tasks on the project board

Overall explanation

Labels in GitHub Projects are used to prioritize and categorize issues, making it easier to track and manage tasks on the project board. This enhances organization and communication within the team.

WRONG ANSWERS:

Labels are not used for assigning access permissions. Access permissions are typically managed at the repository or organization level.

Real-time collaboration on code editing is not the primary purpose of labels in GitHub Projects. Labels are more focused on issue categorization.

Labels are not primarily for customizing the appearance of the project board but for categorizing and prioritizing issues.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What type of file is used to define a workflow in GitHub Actions?

a. JSON file

b. CSV file

c. Markdown file

d. Correct answer

e. YAML file

A

e. YAML file

Overall explanation

GitHub uses YAML because it is a commonly used, human-readable data serialization format. Its flexibility and many different use cases are why GitHub chose YAML.

WRONG ANSWERS:

Markdown is a lightweight markup language used for text formatting. While there are markdown files on GitHub, they are not used to define workflows. However, you can use them to document the functions of your workflow and YAML file.

GitHub Actions workflows are not defined using a CSV file because CSV files are used for data storage.

JSON files are used for scripting or temporary data storage.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

You are participating in a GitHub discussion where comments have been made in response to a question. You’ve received a helpful response and want to highlight the comment to allow visitors to find the answer quickly. What action should you take?

a. lock the discussion so it remains the last answer of the discussion

b. create an issue and link the discussion

c. instruct users to use discussion insights to find the answer

d. mark the comment as the answer to the discussion

A

d. mark the comment as the answer to the discussion

Overall explanation

You can mark a comment in the discussion as an answer to the discussion if a discussion is within a category that accepts answers. When you mark a question as an answer, GitHub will highlight the comment and replies to the comment to help visitors quickly find the answer.

WRONG ANSWERS:

you don’t need to lock the discussion. Additional comments may still allow others to ask additional questions or provide additional insight or tips for others. You should simply mark the comment as the answer.

discussion insights will show data behind all of the discussions in the repo, not specific answers to questions. You should simply mark the comment as the answer.

you don’t need to create an issue and link the discussion. You should simply mark the comment as the answer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What differentiates Projects from Projects Classic in terms of user interface customization options?

Correct answer

a. Projects provides more flexibility in customizing project boards and workflows

b. Both Projects and Projects Classic share the same user interface

c. Projects has a fixed and non-customizable user interface

d. Projects has a less customizable interface compared to Projects Classic

A

a. Projects provides more flexibility in customizing project boards and workflows

Overall explanation

Projects offers more customizable options for project boards and workflows compared to Projects Classic. Projects allows users to adjust the experience to their specific needs making it better for tracking progress and organizing issues and pull requests.

WRONG ANSWERS:

Projects actually have a more customizable interface than Projects Classic

Projects and Projects Classic do not share the same user interface. Projects Classic is simpler while Projects has more features and is more advanced

Projects do not have a fixed and non-customizable user interface. Projects have many customizable options to better organize the groups projects issues, pull requests, and draft issues

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What can be determined based on the following CODEOWNERS file?

  1. *.tf @acme/infrastructure
  2. /docs/ @dani

a. changes to files in the docs folder need to be reviewed by the GitHub user dani for a pull-request

b. review assignments are assigned by placing this CODEOWNERS file in the owners folder within the repository

c. the GitHub user dani has code ownership for all individual commits made in the docs folder

d. changes to files with the tf extension need to be reviewed by the infrastructure user

A

a. changes to files in the docs folder need to be reviewed by the GitHub user dani for a pull-request

Changes to files in the docs folder need to be reviewed by the user dani. A CODEOWNERS file uses a pattern that follows most of the same rules used in gitignore files. The pattern is followed by one or more GitHub usernames or team names using the standard @username or @org/team-name format.

WRONG ANSWERS:

Teams can be specified as code owners. Teams should be identified in the format @org/team-name. Changes to files with the tf extension need to be reviewed by the infrastructure team within the acme organization.

To use a CODEOWNERS file, create a new file called CODEOWNERS in the .github/, root, or docs/ directory of the repository, in the branch where you’d like to add the code owners. If the CODEOWNERS file exists in other directories it will be ignored.

The CODEOWNERS file in a GitHub repository is used to specify individuals or teams responsible for code reviews in specific directories or for specific file types. It does not determine ownership of individual commits; rather, it influences the review process and notifies specified owners or teams when changes are made to the indicated files or directories.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Thomas has created a new repository in the GitHub UI and needs to add a new file. What is the correct way to achieve this?

a. Create a new branch for each new file and manually add the files in the GitHub web interface.

b. Use the git push command after adding the files to his local repository.

c. Click the “Add file” button on the repository’s GitHub page to Create a New File or Upload an Existing file to the repository.

d. Download the files to his local machine and copy them into the repository folder.

A

c. Click the “Add file” button on the repository’s GitHub page to Create a New File or Upload an Existing file to the repository.

Overall explanation

You can upload and commit an existing file to a repository on GitHub or by using the command line. If the repository contains files for an existing project, you can create a new branch, upload the files, and submit a pull request.

WRONG ANSWERS:

Downloading and copying files manually into the repository folder differs from the recommended way to add files, especially for version-controlled projects.

The git push command is used to push changes from a local repository to a remote repository. Still, it assumes that the files have already been added to the local repository using “git add.”

Creating a new branch and manually adding files in the GitHub web interface is not the standard method for adding files to a repository; it’s more suitable for creating branches or making changes to existing files.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Which features are commonly found in a user’s public GitHub user profile?

a. metadata, achievements, profile readme, repositories, pinned repositories, and stars

b. comment history, project forks, and file downloads

c. private repositories, project boards, and code snippets

d. wiki contributions, organization memberships, and follower count

A

a. metadata, achievements, profile readme, repositories, pinned repositories, and stars

Overall explanation

A user’s GitHub profile includes metadata (user information), achievements, profile readme, repositories, pinned repositories, and stars. These features provide a comprehensive overview of a user’s GitHub activity, contributions, and projects.

WRONG ANSWERS:

comment history, project forks, and file downloads are not typically featured in the user profile; they relate to specific repositories or project details

private repositories, project boards, and code snippets are aspects of GitHub but are not directly part of the user profile

wiki contributions, organization memberships, and follower count are relevant but are not primary features displayed in the user profile

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Whenever you work in a GitHub codespace, what type of machine are you working on?

a. a dev container running on a virtual machine managed by GitHub

b. a local machine running GitHub Desktop

c. a virtual machine running on your local hardware

d. a virtual machine running in your own Microsoft Azure account

A

a. a dev container running on a virtual machine managed by GitHub

Overall explanation

Development containers, or dev containers, are Docker containers that are specifically configured to provide a fully featured development environment. Whenever you work in a codespace, you are using a dev container on a virtual machine.

WRONG ANSWERS:

Codespaces are not based on a dedicated machine physically connected to your computer. They are cloud-hosted, allowing for remote development.

Codespaces are cloud-based, and you are not working on a local machine running GitHub Desktop. Codespaces provide a remote development
environment accessible from your browser.

While Codespaces do run in Azure, they are managed by GitHub and don’t run in your own account

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

As a GitHub project manager, you are reaching the maximum limit of items in a project, and you need a way to manage the project’s content so there are no interruptions. What GitHub feature can you archive items as they are closed as completed or not planned?

a. configure your project’s built-in workflows to archive the desired items automatically

b. change the milestone of the impacted issues or pull requests to a later date

c. reopen the issues so the status is no longer completed or not planned

d. use filters to display only the items in the project view to stay below the maximum limit

A

a. configure your project’s built-in workflows to archive the desired items automatically

Overall explanation

You can configure your project’s built-in workflows to automatically archive items that match a filter. You can configure your project’s built-in workflows to automatically archive items. Archiving items will help you stay below the limit of 1,200 items in each project. The auto-archive workflow supports a subset of filters. You can use the following filters when configuring your workflow.

WRONG ANSWERS:

While filters would allow you to group items together, it wouldn’t remove them from the project, resulting in you hitting the maximum number of items in the project

changing the milestone wouldn’t help here, as it wouldn’t remove them from the project, resulting in you hitting the maximum number of items in the project

reopening the issues wouldn’t help because it wouldn’t remove them from the project, resulting in you hitting the maximum number of items in the project

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

As a developer, you want to programmatically manage a GitHub project without logging into the GitHub user interface. What options do you have to do this? (select two)

a. use the GitHub Wiki functionality to programmatically manage GitHub projects

b. use the GitHub CLI to create and manage issues and pull requests

c. download and install Git to manage existing issues

d. use the GraphQL API to manage the project

A

b. use the GitHub CLI to create and manage issues and pull requests

d. use the GraphQL API to manage the project

Overall explanation

GitHub CLI is a command-line tool that brings pull requests, issues, GitHub Actions, and other GitHub features to your terminal, so you can do all your work in one place.

The GitHub GraphQL API offers flexibility and the ability to define precisely the data you want to fetch.

WRONG ANSWERS:

Using Git commands directly in the terminal is primarily for version control tasks and does not provide direct access to GitHub project management features. GitHub CLI or API would be more suitable for project management tasks.

The GitHub Wiki functionality is primarily designed for creating and managing documentation within a repository. It is not a direct tool for programmatically managing GitHub projects. Developers would typically use the GitHub CLI, API, or GitHub Actions for such tasks.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

When working with GitHub repositories, what is the purpose of cloning a repository to your local machine?

a. cloning is necessary only for creating backup copies of a repository and does not directly support collaborative development

b. cloning enables you to fetch only the latest changes and the main branch from GitHub.com, making it efficient for quick updates without downloading the entire repository.

c. cloning allows you to copy the entire repository from GitHub.com to your local machine or codespace

d. cloning allows you to create a new, entirely separate repository for personal use, providing isolation from the original project.

A

c. cloning allows you to copy the entire repository from GitHub.com to your local machine or codespace

Overall explanation

Cloning allows you to copy the entire repository from GitHub.com to your local machine or codespace, providing a full version history and enabling contributions to the project. This process facilitates collaboration by allowing contributors to work locally and make changes before pushing them to the remote repository.

WRONG ANSWERS:

Cloning is not meant to create entirely separate repositories. Instead, it is intended to replicate the existing project for collaborative development, ensuring contributors have a synchronized copy of the project.

Cloning does not fetch only the latest changes but pulls down a full copy of all repository data. It provides a comprehensive snapshot of the project’s current state, not just the latest updates.

Cloning is not necessary only for creating backups. Its primary purpose is to support collaborative development by providing a local copy of the repository for contributors to work on and contribute changes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Organization owners can require two-factor authentication in their organization for all of the following except:

a. organization members

b. outside collaborators

c. billing managers

d. repository viewers

A

d. repository viewers

Overall explanation

Organization owners can require organization members, outside collaborators, and billing managers to enable two-factor authentication for their personal accounts, making it harder for malicious actors to access an organization’s repositories and settings. Repository viewers who have read-only access to repositories, are not subject to the organization-wide two-factor authentication requirement.

WRONG ANSWERS:

Organization owners can require two-factor authentication for all members of the organization to enhance security.

Organization owners can require two-factor authentication for outside collaborators who are users external to the organization but have access to specific repositories.

Organization owners can require two-factor authentication for billing managers within an organization.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Bryan is a content creator and wants to offer students hands-on experience using codespaces. How can he share codespace links directly to a browser?

a. share a deep link in the course materials that, when clicked, opens a pre-configured Codespace in the browser

b. provide instructions for installing the GitHub CLI and using specific commands to initiate Codespaces creation

c. ask students to clone the repository and set up Codespaces individually based on their preferences

d. instruct students to manually create Codespaces by navigating to the GitHub repository’s main page

A

a. share a deep link in the course materials that, when clicked, opens a pre-configured Codespace in the browser

Overall explanation

You can make it easy for people to work on your repository in a codespace by providing a link to the codespace creation page. You can add a link to take people straight to a page for creating a codespace, with your choice of options preconfigured. Alternatively you can link to the “Resume codespace” page.

WRONG ANSWERS:

Instructing students to manually create Codespaces by navigating to the GitHub repository’s main page is not the most efficient way to provide hands-on experience.

Asking students to clone the repository and set up Codespaces individually introduces unnecessary complexity and manual steps.

Providing instructions for installing the GitHub CLI and using specific commands adds complexity and might be challenging for students, especially beginners.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is the primary characteristic of open-source software?

a. developed by a single company

b. free and accessible source code

c. exclusive for commercial use

d. closed and proprietary code

A

b. free and accessible source code

Overall explanation

Open-source software is characterized by its freely available source code that can be viewed, modified, and redistributed by anyone. The openness of the source code allows collaboration and community-driven development.
****

WRONG ANSWERS:

Open-source software is typically developed collaboratively by a community of contributors rather than being owned or controlled by a single company.

Open-source software is the opposite of closed and proprietary software. Open-source code is open for inspection, modification, and distribution, while proprietary code is closed and not freely available.

Open-source software can be used for both commercial and non-commercial purposes. It is not exclusive to any specific type of usage and encourages a wide range of applications and uses.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Which of the following best describes the roadmap layout in GitHub projects?

a. a layout with customizable columns with your issues, pull requests, and draft issues

b. a configurable timespan to track your issues, pull requests, and draft issues on a timeline

c. a layout that organizes issues, pull requests, and draft issues into a hierarchical tree structure

d. a powerful and adaptable spreadsheet with your issues, pull requests, and draft issues

A

b. a configurable timespan to track your issues, pull requests, and draft issues on a timeline

Overall explanation

The roadmap layout provides a high-level visualization of your project across a configurable timespan. It allows you to drag items to affect their start and target dates or selected iterations. Roadmaps enables the users to customize the data and iteration fields to position the issues, pull requests, and draft issues on a timeline.

WRONG ANSWERS:

The table layout option is a powerful and adjustable spreadsheet with issues, pull requests, and draft issues.

The layout that utilizes customizable columns for a project issues, pull requests, and draft issues is the board layout

GitHub Projects does not have a layout option to organize issues, pull requests, and draft issues into a hierarchical tree structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Why might a developer use a branch for development in Git or GitHub?

a. to isolate and work on a set of changes independently from the main project

b. to archive and store old versions of project files

c. to permanently separate code contributions made by different developers

d. to create a duplicate copy of the entire repository

A

a. to isolate and work on a set of changes independently from the main project

Overall explanation

Developers use branches to create an isolated environment for specific tasks, such as developing new features or fixing bugs. By doing so, they can work independently without affecting the main codebase. This isolation allows for focused development, testing, and collaboration, and the changes can be later merged back into the main branch or another target branch.

WRONG ANSWERS:

creating a duplicate copy of the entire repository is unnecessary and not the primary purpose of using branches for development

branches are not intended to separate code contributions permanently; they are temporary environments for isolated development tasks

archiving old versions of project files is not the primary purpose of using branches; their main role is to facilitate concurrent and isolated development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

What are the primary differences between GitHub Desktop and GitHub.com?

a. GitHub Desktop is a version control system

b. Github.com is a graphical user interface for Git

c. GitHub Desktop is exclusively used for online code editing with GitHub services

d. Github.com is focused on both online and offline development.

e. GitHub Desktop is a free, open-source application that helps you to work with files hosted on GitHub or other Git hosting services

f. GitHub.com is a web-based platform for hosting, collaboration, and project management

g. GitHub Desktop is a command-line interface for Git

h. Github.com is a web-based platform for hosting repositories

A

e. GitHub Desktop is a free, open-source application that helps you to work with files hosted on GitHub or other Git hosting services

Overall explanation

GitHub Desktop is a desktop application for managing Git repositories locally, while github.com is a web-based platform for hosting, collaboration, and project management.

WRONG ANSWERS:

GitHub Desktop is not a command-line interface for Git, and github.com is a web-based platform, not a command-line tool

GitHub Desktop is not a version control system on its own; it is a desktop client for working with Git

GitHub Desktop supports both online and offline development

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

What type of files and content can be included in a template repository?

a. any files or content that are relevant to the project

b. only README files

c. files cannot be included in a template repository

d. only source code files

A

a. any files or content that are relevant to the project

Overall explanation

While creating a template repository, a user can include any files or content that are relevant to the project that they are creating. This is beneficial and creates a more simple creation process for the user than creating a brand new repository.

WRONG ANSWERS:

Source code files can be included in a template repository, but they are not the only files or content that can be included

README files can be included in a template repository, but they are not the only field or content that can be included

Template repositories can include the same directory structure, branches, and files

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

What are the different repository visibility options for GitHub Enterprise?

a. private, public, and internal

b. personal, public, and internal

c. private, public, and secure

d. personal, public, and secure

A

a. private, public, and internal

Overall explanation

Within GitHub Enterprise you can restrict who has access to a repository by choosing a repository’s visibility: public, internal, or private.

WRONG ANSWERS:

There is not a “personal” visibility setting offered by GitHub.

There is not a “secure” visibility setting offered by GitHub.

There is not a “personal” or “secure” visibility setting offered by GitHub.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Which locations can you define the actions used in your workflow in GitHub Actions? (select three)

Your selection is correct

a. a published Docker container image on Docker Hub

b. the same repository as your workflow file

c. actions can only be defined in private repositories

d. any public repository

A

a. a published Docker container image on Docker Hub

b. the same repository as your workflow file

d. any public repository

Overall explanation

A reusable workflow can be used by another workflow if any of the following is true:

Both workflows are in the same repository.

The called workflow is stored in a public repository, and your organization allows you to use public reusable workflows.

The called workflow is stored in a private repository and the settings for that repository allow it to be accessed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What feature can developers take advantage of by using the GitHub Marketplace?

a. a single place to connect, follow, and chat with other members of the GitHub community

b. the ability to publish and share their GitHub Actions and Apps

c. a storefront for anyone to sell their GitHub Apps to others

d. a single place to manage their GitHub subscription, purchase additional GitHub Actions storage and minutes and access GitHub Apps

A

b. the ability to publish and share their GitHub Actions and Apps

Overall explanation

The GitHub Marketplace allows developers to share GitHub Actions and Apps with the GitHub community.

WRONG ANSWERS:

The primary intention of the GitHub Marketplace is to list free and paid tools for developers to use. It is not a single place to connect and follow members of the GitHub community.

Anyone can share their apps with other users for free on GitHub Marketplace, but only apps owned by organizations can sell their apps.

GitHub Marketplace offers developers two types of tools: GitHub Actions and Apps. Managing GitHub subscriptions, GitHub Actions storage, and minutes are not provided within the GitHub Marketplace.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Jeff frequently creates similar projects with a specific directory structure, branches, and files. He wants to streamline this process for efficiency. Which feature would be most suitable for this scenario?

a. GitHub Issue

b. GitHub Action

c. GitHub Gist

d. GitHub Repository Template

A

d. GitHub Repository Template

Overall explanation

You can make an existing repository a template, so you and others can generate new repositories with the same directory structure, branches, and files.

WRONG ANSWERS:

GitHub Gists are used for sharing snippets or small pieces of code but are not suitable for defining a full repository structure.

GitHub Issues are for tracking tasks, bugs, and discussions, not for creating a standardized repository structure.

GitHub Actions are used for automating workflows, continuous integration, and deployment, but they do not define repository structure.

26
Q

What is the primary purpose of a Version Control System (VCS)?

a. a system designed to execute source code developed by its users

b. an app used by organizations to enforce code quality standards

c. a solution to automatically fix coding errors or issues within files from multiple developers

d. a program or service used to track changes to a collection of files in a collaborative environment

A

d. a program or service used to track changes to a collection of files in a collaborative environment

Overall explanation

A Version Control System (VCS) is a tool that helps manage changes to source code, documents, and other files in a collaborative environment. It allows multiple developers to work on a project simultaneously by tracking changes made to the files over time. VCS provides features such as version history, branching, and merging, which help maintain a structured development process, reduce conflicts, and enable efficient collaboration. The main goal is to ensure that changes can be tracked, reverted if necessary, and integrated seamlessly into the project, promoting a systematic and organized approach to software development.

Wrong Answers:

VCS is not used to enforce code quality standards, as that is usually done using a different app or service

VCS does not execute source code. It is designed to store different versions of the code or files

VCS will not automatically fix coding errors or issues in files - it only stores the files

27
Q

As a project manager overseeing a GitHub repository, you want to assess community engagement, track key metrics, and pull useful data. How might GitHub repository insights help you?

a. repository insights graph activity and contributor engagement of your project

b. repository insights allow you to track all open tasks and issues

c. repository insights highlight secret and code scanning alerts

d. repository insights provides contributors email addresses for you to contact them directly

A

a. repository insights graph activity and contributor engagement of your project

Overall explanation

GitHub repository insights and the respective repository’s graphs give you information on traffic, projects that depend on the repository, contributors and commits to the repository, and a repository’s forks and network. You can use this data to get a better understanding of who’s using your repository and why they’re using it.

WRONG ANSWERS:

Secret and code scanning alerts pertains to security features rather than analytics and insights related to repository activity and engagement. Therefore these are managed and visible on the Security tab within GitHub.

GitHub Repository does show contributor activity, but does not expose individual contributors’ email addresses because of user privacy and security.

GitHub Issues are used to track ideas, feedback, tasks, or bugs for work on GitHub. While GitHub repository insights provide a summarized view of activity of issues (issues closed, issues opened, etc.) issue tracking is not part of GitHub insights, but rather can be found on the GitHub Issues tab.

28
Q

You are reviewing proposed changes in a pull request in the GitHub UI. What options are available to you in order to evaluate the pull request and make a decision to approve it or not? (select five)

a. view discussions related to the pull request in the Conversation tab

b. ensure the pull request has passed the required checks in the Checks tab

c. review the commits included in the pull request using the Commits tab

d. provide inline comments on the changes proposed in the pull request in the Files Changed tab

e. validate that the proposed changes fix the related issue linked to the pull request in the Security tab

f. compare the differences between the files in the base and compare branches in the Files Changed tab

A

. view discussions related to the pull request in the Conversation tab

b. ensure the pull request has passed the required checks in the Checks tab

c. review the commits included in the pull request using the Commits tab

d. provide inline comments on the changes proposed in the pull request in the Files Changed tab

f. compare the differences between the files in the base and compare branches in the Files Changed tab

Overall explanation

You can review changes in a pull request one file at a time. While reviewing the files in a pull request, you can leave individual comments on specific changes. After you finish reviewing each file, you can mark the file as viewed. This collapses the file, helping you identify the files you still need to review. A progress bar in the pull request header shows the number of files you’ve viewed. After reviewing as many files as you want, you can approve the pull request or request additional changes by submitting your review with a summary comment.

WRONG ANSWER:

GitHub pull request doesn’t have a Security tab, nor does GitHub validate that the proposed changes will properly address the issue linked to the PR.

29
Q

When using GitHub Actions, what is the proper order of operations when a pull request is opened?

a. Event ➞ Workflow ➞ Job ➞ Steps ➞ Action

b. Action ➞ Steps ➞ Workflow ➞ Event ➞ Job

c. Workflow ➞ Event ➞ Steps ➞ Job ➞ Action

d. Action ➞ Steps ➞ Job ➞ Workflow ➞ Event

A

a. Event ➞ Workflow ➞ Job ➞ Steps ➞ Action

Overall explanation

You can configure a GitHub Actions workflow to be triggered when an event occurs in your repository, such as a pull request being opened or an issue being created. Your workflow contains one or more jobs which can run in sequential order or in parallel. Each job will run inside its own virtual machine runner, or inside a container, and has one or more steps that either run a script that you define or run an action, which is a reusable extension that can simplify your workflow.

WRONG ANSWERS:

Workflow ➞ Event ➞ Steps ➞ Job ➞ Action is incorrect because the pull request is the “EVENT” and it should come first

Action ➞ Steps ➞ Workflow ➞ Event ➞ Job is incorrect because the pull request is the “EVENT” and it should come first

Action ➞ Steps ➞ Job ➞ Workflow ➞ Event is the right workflow, but just backwards

30
Q

GitHub offers several ways to customize a codespace. What can you customize? (select four)

a. change the display name of the codespace to help you differentiate multiple codespaces

b. change the operating system to either macOS or Windows to work on your preferred platform

c. select the machine type running your namespace so you have the appropriate resources

d. select what Azure account the codespaces should be launched in to ensure the security of your application

e. change the default region that your codespaces will be created to personalize where your data is held

f. change the shell in a codespace to keep the setup that you’re used to

A

a. change the display name of the codespace to help you differentiate multiple codespaces

b. change the operating system to either macOS or Windows to work on your preferred platform

c. select the machine type running your namespace so you have the appropriate resources

e. change the default region that your codespaces will be created to personalize where your data is held

f. change the shell in a codespace to keep the setup that you’re used to

Overall explanation

You can change the codespace display name to one of your choice through GitHub.com or the GitHub CLI.

When you’re working in a codespace, you can open a new terminal window with a shell of your choice, change your default shell for new terminal windows, or install a new shell. You can also use dotfiles to configure your shell.

Codespaces that use the default dev container image come with the bash, zsh, and fish shells installed. If you open a new codespace in the VS Code web client, or connect to a codespace over SSH, the terminal opens with a bash session running by default. In the VS Code desktop application, the default shell depends on your local settings and operating system.

By default the machine type with the lowest valid resources is used when you create a codespace. You can choose an alternative machine type either when you create a codespace or at any time after you’ve created a codespace.

You can manually select the region that your codespaces will be created in, allowing you to meet stringent security and compliance requirements. By default, your region is set automatically, based on your location.

WRONG ANSWERS:

codespaces do not support Windows or macOS operating systems. They only support Linux

you can’t select the Azure account you want the codespace to run in. They will run in a GitHub-owned account but they can be billed to your Azure account

31
Q

You have committed some code in your private repository but want to share it with a colleague for review and collaboration. Considering the situation, how can you easily share the code without giving your colleague direct access to your repository?

a. create a GitHub Gist for the code and share the Gist URL with your colleague

b. fork your private repository and share the forked repository with your colleague

c. add your colleague as a collaborator to your private repository

d. share the repository’s clone URL and provide your colleague with the necessary credentials

A

a. create a GitHub Gist for the code and share the Gist URL with your colleague

Overall explanation

Creating a GitHub Gist for the code and sharing the Gist URL with your colleague is the most suitable option. Gists allow you to share code snippets or files without granting access to the entire repository, making it ideal for review and collaboration.

WRONG ANSWERS:

Adding your colleague as a collaborator would grant them direct access to your private repository. This option doesn’t align with the goal of sharing the code without providing direct repository access.

Forking a private repository and sharing the forked repository would still give your colleague access to the entire codebase. This doesn’t meet the requirement of sharing specific code without direct access to the repository.

Sharing the repository’s clone URL and credentials would give your colleague direct access to the entire repository. This approach does not align with the goal of sharing specific code only.

32
Q

When creating a codespace development environment in GitHub, what is the default operating system, and what platforms are not supported for the remote development container?

a. Default OS: macOS

b. Not Supported: Windows and Linux

c. any operating system you prefer is supported if you provide your own image

d. Default OS: Windows

e. Not Supported: macOS and Linux

f. Default OS: Ubuntu Linux

g. Not Supported: Windows and macOS

A

f. Default OS: Ubuntu Linux

Overall explanation

By default, the codespace development environment is created from an Ubuntu Linux image that includes a selection of popular languages and tools, but you can use an image based on a Linux distribution of your choice and configure it for your particular requirements. Regardless of your local operating system, your codespace will run in a Linux environment. Windows and macOS are not supported operating systems for the remote development container.

WRONG ANSWERS:

The default operating system for codespace development environments is not Windows. Additionally, macOS is not supported.
Linux is the only OS that is supported.

The default operating system is not macOS for codespaces - it is not supported along with Windows. Linux is the only OS that is supported.

You can’t bring your own OS. Linux is the only OS that is supported.

33
Q

Which GitHub Enterprise Cloud authentication options use a centralized identity provider (IdP) to control and secure access to organization resources?

a. SAML single sign-on (SSO) excluding Enterprise Managed Users

b. GitHub personal accounts with 2FA

c. SAML single sign-on (SSO) and Enterprise Managed Users

d. GitHub does not currently support the use of centralized IdPs

A

c. SAML single sign-on (SSO) and Enterprise Managed Users

Overall explanation

Both GitHub SAML SSO and Enterprise Managed Users can leverage an IdP for authentication. If you configure SAML SSO, members of your organization will continue to sign into their personal accounts on GitHub.com. When a member accesses most resources within your organization, GitHub redirects the member to your IdP to authenticate. With Enterprise Managed Users, you manage the lifecycle and authentication of your users on GitHub.com from an external identity management system, or IdP.

WRONG ANSWERS:

If you configure additional SAML access restriction, each person you want to grant access to your enterprise must create and manage a personal account on GitHub.com. After you grant access to your enterprise, the member can access your enterprise’s resources only after authenticating successfully for both the account on GitHub.com and for an account on your SAML identity provider (IdP).

With authentication solely through GitHub.com, each person you want to grant access to your enterprise must create and manage a personal account on GitHub.com. After you grant access to your enterprise, the member can access your enterprise’s resources after signing into the account on GitHub.com. Personal accounts do not use a centralized IdP, even if configured with 2FA.

GitHub tests and officially support the following IdPs: Active Directory Federation Services (AD FS), Azure Active Directory (Azure AD), Okta, OneLogin, PingOne, Shibboleth

34
Q

What are helpful topics to include to classify a GitHub repository? (select three)

a. license

b. language

c. repository’s intended purpose

d. subject area

A

b. language

c. repository’s intended purpose

d. subject area

Overall explanation

GitHub topics all you to explore repositories in a particular subject area, find projects to contribute to, and discover new solutions to a specific problem. Helpful topics to classify a repository include the repository’s intended purpose, subject area, community, or language. Additionally, GitHub analyzes public repository content and generates suggested topics that repository admins can accept or reject. Private repository content is not analyzed and does not receive topic suggestions.

WRONG ANSWER:

GitHub topics don’t typically include license information. Most people place their license text in a file named LICENSE.txt (or LICENSE.md or LICENSE.rst) in the root of the repository

35
Q

Ned wants to give users easy access to important or frequently used repositories within his organization. What organizational setting can he use to achieve this?

a. pinned repositories

b. GitHub CoPilot

c. GitHub repository insights

d. GitHub Discussions

A

a. pinned repositories

Overall explanation

You can give users easy access to important or frequently used repositories, by choosing up to six repositories for public users and six repositories for members of the organization. Once you pin repositories to your organization profile, the “Pinned” section is shown above the “Repositories” section of the profile page.

WRONG ANSWERS:

Enabling GitHub Discussions is not directly related to giving users easy access to important or frequently used repositories. GitHub Discussions is a feature that provides a space for community discussion within a repository but doesn’t affect the visibility or accessibility of repositories on the organization’s main page.

GitHub Insights is not a specific feature or setting related to giving users easy access to frequently used repositories. GitHub Repository Insights provides analytics and visualizations related to repository activity but does not impact the visibility or accessibility of repositories on the organization’s main page.

GitHub Copilot is an AI-powered code completion tool and does not affect the visibility or accessibility of repositories on the organization’s main page.

36
Q

Amir is a developer working on a complex coding project and recently started using GitHub Copilot to assist with code suggestions. How can GitHub Copilot enhance Amir’s coding experience and workflow?

a. GitHub Copilot can automatically generate and complete entire code files based on input from Amir

b. GitHub Copilot is specifically designed for managing and organizing Amir’s project tasks on GitHub

c. GitHub Copilot allows real-time collaboration with Amir’s team members, facilitating simultaneous code editing

d. GitHub Copilot provides code reviews and suggests improvements in Amir’s existing codebase

A

a. GitHub Copilot can automatically generate and complete entire code files based on input from Amir

Overall explanation

GitHub Copilot is an AI pair programmer that offers autocomplete-style suggestions as you code. You can receive suggestions from GitHub Copilot by writing the code you want to use or by writing a natural language comment describing what you want the code to do. GitHub Copilot analyzes the context in the file you are editing, as well as related files, and offers suggestions from within your text editor.

WRONG ANSWERS:

Real-time collaboration with team members is not a primary feature of GitHub Copilot. It is more focused on code generation.

GitHub Copilot is not specifically designed for managing and organizing project tasks; its main functionality is code completion and generation.

While GitHub Copilot aids in code generation, it is not designed for code reviews or suggesting improvements in the existing codebase.

37
Q

Why is it recommended to use a .gitignore file in a Git repository?

a. to speed up the Git commit process.

b. to hide the repository from public visibility.

c. to exclude specific files and directories from being committed to version control.

d. to encrypt sensitive files in the repository.

A

c. to exclude specific files and directories from being committed to version control.

Overall explanation

It’s easy for developers to overlook files included in a commit. Sometimes, these overlooked files are benign, such as intermediate build files. However, there’s always the risk that someone might inadvertently commit sensitive data. For example, someone could commit an API key or private configuration data that a malicious actor could use. One technique to help avoid this risk is to build and maintain .gitignore files. These files instruct client tools, such as the git command line utility, to ignore paths and patterns when aggregating files for a commit.

While .gitignore files can be useful in helping contributors avoid committing sensitive data, it’s just a strong suggestion. Developers can still work around it to add files if they’re motivated enough, and sometimes files might slip through because they don’t meet the .gitignore file configuration. Project participants should always be on the lookout for commits that contain data that should be excluded from the repository or its history.

WRONG ANSWERS:

Hiding the repository from public visibility is a separate setting and is not directly related to the use of a .gitignore file.

The .gitignore file does not affect the speed of the Git commit process; its primary purpose is to define files that should be ignored during version control operations.

Encryption of sensitive files is not the role of the .gitignore file; rather, encryption mechanisms and securing sensitive data should be handled using appropriate security measures.

38
Q

Which of the following best describes the differences between Git and GitHub?

GitHub is a distributed version control system

GitHub is used by organizations to manage and control for larger projects

GitHub is a web-based tool with a powerful UI to store and manage files

GitHub is a cloud platform that uses Git as its core technology

A

GitHub is a cloud platform that uses Git as its core technology

Overall explanation

Git and GitHub serve different purposes in the context of version control and collaboration. Git is the version control system itself, while GitHub is a platform built around Git, providing a web-based interface and additional collaboration tools. Developers often use Git for local version control and GitHub for remote collaboration and project management.

WRONG ANSWERS:

both Git and GitHub are used by individuals for smaller projects and large organizations alike

Git is a distributed version control system, not centralized. GitHub is a platform based on Git

Git is often managed using the command line, but it’s primarily a version control and collaboration tool

39
Q

You are looking through issues on a project so you can contribute but are unsure if anyone is working on an issue. What GitHub feature can your team use to better inform other team members about who is working on an issue?

a. link a pull request or branch to an issue to show that a fix is in progress

b. send a message to the collaborators and ask them what issues they are working on

c. close the issue and wait for other team members to alert you that they were working on it

d. filter, sort, and search issues and pull requests that are relevant to the repository

A

a. link a pull request or branch to an issue to show that a fix is in progress

Overall explanation

You can link a pull request or branch to an issue to show that a fix is in progress and to automatically close the issue when the pull request or branch is merged. You can link an issue to a pull request manually or using a supported keyword in the pull request description. When you link a pull request to the issue the pull request addresses, collaborators can see that someone is working on the issue.

When you merge a linked pull request into the default branch of a repository, its linked issue is automatically closed.

WRONG ANSWERS:

filtering issues and pull requests probably won’t provide additional information if there are no additional detains in the issues that signify that somebody is working on it. Team members should link a PR or branch to the issue instead.

sending an email isn’t very collaborative and isn’t even a GitHub feature. Team members should link a PR or branch to the issue instead.

closing the issue would alert the users that created the issue and it might upset them since they might think the issue isn’t important. Team members should link a PR or branch to the issue instead.

40
Q

Steve’s organization has recently required the use of two-factor authentication and notified him of this change. What will happen to Steve’s GitHub account should he elect not to enable 2FA?

a. the account will still have organization access for a specified grace period.

b. the account will be deleted.

c. the account will be suspended.

A

d. the account will be removed from the organization.

Overall explanation

When you require use of two-factor authentication for your organization, members, outside collaborators, and billing managers (including bot accounts) who do not use 2FA will be removed from the organization and lose access to its repositories. They will also lose access to their forks of the organization’s private repositories.

WRONG ANSWERS:

GitHub accounts are not deleted if 2FA is not enabled on their personal account.

GitHub accounts are not suspended if 2FA is not enabled on their personal account.

GitHub accounts without 2FA will be removed immediatly from any organization that enables two-factor authentication

41
Q

As an open-source contributor on many projects, Kristina has trouble keeping up with notifications and mentions across projects. Today, she needs to review and take action on any comments where she was tagged or mentioned. How can Kristina quickly sort through notifications in GitHub so only comments where she was mentioned are shown?

a. Kristina doesn’t need to do anything as her inbox will only show notifications for mentions, by default

b. in her GitHub inbox, Kristina should filter messages using a filter query reason:mention

c. using her email client, Kristina can search for her username in unread messages

d. use a Dependabot custom filter to find specific alerts and notifications

A

b. in her GitHub inbox, Kristina should filter messages using a filter query reason:mention

Overall explanation

To use the notifications inbox on GitHub and GitHub Mobile, you must enable web and mobile notifications in your notification settings. To access your notifications inbox, in the upper-right corner of any page, click 🔔.

Your inbox shows all of the notifications that you haven’t unsubscribed to or marked as Done. You can customize your inbox to best suit your workflow using filters, viewing all or just unread notifications, and grouping your notifications to get a quick overview.

By default, your inbox will show read and unread notifications. To see only unread notifications, click Unread or use the is:unread query.

WRONG ANSWERS:

searching in her email client will result in all messages from GitHub and not necessarily only messages for @mentions. Also, using an external email client isn’t a GitHub feature

Dependabot will only show alerts for vulnerabilities, security alerts, and others. It is not designed to notify you about @mentions

by default, GitHub inbox will show ALL messages that are unread and not just @mentions

42
Q

Which is an alternative name for a version control system(VCS)?

a. code collaboration tool (CCT)

b. project lifecycle management (PLM) system

c. source code management (SCM) system

d. revision control system (RCS)

A

c. source code management (SCM) system

Overall explanation

Source Code Management (SCM) systems are a vital component of software development, utilized to control and manage changes to software during its lifecycle. These systems are also referred to as Version Control Systems (VCS), which are often used interchangeably. The official documentation for Git, one of the most popular VCS, can be located at git-scm.com. While Version Control is a crucial aspect of SCM, it is only one of the many practices involved in SCM. Hence, it is imperative to have a clear understanding of SCM systems to ensure efficient software development.

WRONG ANSWERS:

each of these alternative answers are made up terms and are not real

43
Q

You are working on a project with multiple issues and want to start contributing immediately to a new branch. How can you quickly create a new branch to work on the issue?

a. click on the “Clone or download” button and manually create a branch locally

b. use the “Fork” button to initiate the creation of a new repository and associated branch

c. clone the entire repository and create a new branch in your local environment using the git checkout -b command

d. use the “Create a branch” option on the issue page to quickly create a branch associated with the issue

A

d. use the “Create a branch” option on the issue page to quickly create a branch associated with the issue

Overall explanation

You can create a branch to work on an issue directly from the issue page and get started right away. When you create a pull request for one of these branches, it is automatically linked to the issue.

Note: The ability to create a branch for an issue is currently in public beta and subject to change.

WRONG ANSWERS:

The “Fork” button is unnecessary for creating a branch directly from an issue. It introduces an additional step that is not required for this specific process.

Clicking on the “Clone or download” button is related to cloning the repository but not specifically for creating a new branch directly from an issue.

Cloning the entire repository is not required to create a branch directly from an issue. It involves unnecessary steps for issue-specific development.

44
Q

What are the primary benefits of adding a README file to a GitHub repository? (select three)

a. document what the project does and why the reader might find it useful

b. streamline code reviews for collaborators

c. communicate who maintains and contributes to the project

d. tell users where they can get help with your project

A

a. document what the project does and why the reader might find it useful

c. communicate who maintains and contributes to the project

d. tell users where they can get help with your project

Overall explanation

Adding a README file to a project repository offers project information and guiding information about the project. A README file is a valuable resource for explaining a repository’s purpose, setup, and usage, making it easier for contributors to understand and engage with the project.

WRONG ANSWERS:

Streamlining code reviews for collaborators is not directly related to the benefits of adding a README file; README files focus on project documentation and guidance.

45
Q

When should GitHub issue templates be used?

a. Only for minor bug fixes to avoid cluttering the repository

b. To streamline the creation of consistent issues and enhance collaboration

c. Only for issues related to code, excluding discussions and general project questions.

d. Exclusively for private repositories with restricted access

A

b. To streamline the creation of consistent issues and enhance collaboration

Overall explanation

GitHub issue templates are used to provide a standardized structure for creating issues, ensuring that contributors provide essential details and facilitating efficient collaboration by streamlining the issue creation process.

WRONG ANSWERS:

GitHub issue templates are not limited to specific types of issues. They can be used for various purposes, including bug reports, feature requests, and other types of contributions. Using templates ensures that necessary information is included in the issues.

GitHub issue templates can be used in both public and private repositories, and they are not limited to repositories with restricted access.

GitHub issue templates can be used for a variety of purposes, including discussions, questions, bug reports, and more. They are not limited to issues related only to code.

46
Q

You and a colleague are collaborating to resolve a critical project issue. You want to receive email notifications of any comments or changes so you can address them promptly. How can you achieve this?

a. star the repository to receive enable notifications on any changes made within the repository

b. subscribe to the issue in GitHub to receive notifications about the latest comments

c. submit a merge request and link it to the issue

d. enable email notifications for the entire repository to stay informed about any updates

A

b. subscribe to the issue in GitHub to receive notifications about the latest comments

Overall explanation

To stay updated on the most recent comments in an issue, you can subscribe to an issue to receive notifications about the latest comments. This ensures you receive notifications specifically for the critical project issue you are collaborating on. To quickly find links to recently updated issues you’re subscribed to, visit your dashboard.

WRONG ANSWERS:

enabling email notifications for the entire repository might lead to information overload, as it would cover all activities within the repository.

using the “Star” button on the repository would not result in email notifications for activity in the repo

submitting a merge request and linking the issue would not be the correct process here as that’s what you would do once that issue has been resolved

47
Q

What does it mean to fork a repository on GitHub?

a. creating a private copy of a repository for personal use

b. initiating a code review process for a repository

c. creating a parallel branch for experimental changes

d. cloning a repository for offline development

A

a. creating a private copy of a repository for personal use

Overall explanation

Forking on GitHub involves creating a personal copy of someone else’s repository. This copy is independent and allows you to make changes without affecting the original repository. It’s a common practice for contributing to open-source projects.

WRONG ANSWERS:

Forking and branching are related concepts, but forking is specifically about creating an entire independent copy of a repository. Branching is done within a repository to work on different features or experiments.

Forking is not about initiating a code review process. While forks can be used to propose changes through pull requests, the act of forking itself is about creating a personal copy for potential contributions.

Forking involves creating a personal copy of a repository on GitHub, not cloning. Cloning is a different Git operation used to create a local copy of a repository.

48
Q

Which of the following best describes a GitHub project?

a. a version control system for tracking changes in code

b. a repository with individual files

c. a collaborative space to help manage code, track issues, and plan your work

d. a platform for hosting personal websites

A

c. a collaborative space to help manage code, track issues, and plan your work

Overall explanation

A GitHub project’s primary purpose is to be an adaptable spreadsheet, task board, and road map to integrate your issues and pull requests on Github. This allows groups of people to plan and track their work effectively.

WRONG ANSWERS:

GitHub projects do involve repositories, but they are not limited to individual files. Github projects usually comprise of large projects with multiple files and directories.

While a person can use GitHub to host personal websites, it is not the main purpose of a GitHub project. GitHub projects are mainly for collaboration and managing code, issues, and work.

GitHub does embody versional control through Git. The main purpose of a GitHub project is more than just a version control system. Projects on GitHub allow for collaboration, tracking issues, and management of code.

49
Q

You are reviewing a pull request on GitHub. The changes introduced seem promising, but you’ve identified a few areas that need improvement. What actions can you take to effectively contribute to the code review process? (select three)

Your selection is correct

a. comment on specific lines of code with detailed feedback

b. indicate overall approval and readiness for merging

Your selection is correct

c. request specific changes directly within the code

Your selection is correct

d. provide suggestions for improvements before merging

A

a. comment on specific lines of code with detailed feedback

c. request specific changes directly within the code

d. provide suggestions for improvements before merging

Overall explanation

You can comment on a pull request, approve the changes, or request improvements before approving.

You can review changes in a pull request one file at a time. While reviewing the files in a pull request, you can leave individual comments on specific changes. After you finish reviewing each file, you can mark the file as viewed. This collapses the file, helping you identify the files you still need to review. A progress bar in the pull request header shows the number of files you’ve viewed. After reviewing as many files as you want, you can approve the pull request or request additional changes by submitting your review with a summary comment.

WRONG ANSWER:

While approving is a valid action, it is not suitable in this scenario where areas of improvement have been identified. Approving is more appropriate when you believe the changes are ready for merging without any concerns.

50
Q

sabella wants to create a new branch for a pull request but does not have write permissions to the repository. How can she create a new branch in order to propose changes to the main branch?

a. ask a friend to create the branch for her

b. fork the repository first

c. clone the repository to her local machine and then create the branch

d. use the GitHub UI to create the branch instead of the command line

A

b. fork the repository first

Overall explanation

If you want to create a new branch for your pull request and do not have write permissions to the repository, you can fork the repository first. Fork the repo, create the branch with proposed changes, and submit the pull request

WRONG ANSWERS:

Cloning the repo would allow you to create the branch locally, but you would not be able to push the new branch since you don’t have permission

Changing to the GitHub UI wouldn’t give you permission to create the branch

Don’t ask a friend to do it. Fork the repo, create the branch with proposed changes, and submit the pull request

51
Q

Jack would like to disable GitHub Actions on his repository. What is the result of doing so?

a. actions and reusable workflows are limited

b. workflows will be able to create pull requests, but not approve them

c. you cannot disable GitHub Actions on a repository

d. no workflows run on the repository

A

d. no workflows run on the repository

Overall explanation

You can disable GitHub Actions for your repository altogether. When you disable GitHub Actions, no workflows run in your repository.

WRONG ANSWERS:

By default, GitHub Actions is enabled on all repositories and organizations. You can choose to disable GitHub Actions or limit it to actions and reusable workflows in your organization.

You can disable GitHub Actions for your repository altogether. When you disable GitHub Actions, no workflows run in your repository. Alternatively, you can enable GitHub Actions in your repository but limit the actions and reusable workflows a workflow can run.

By default, when you create a new repository in your personal account, workflows are not allowed to create or approve pull requests. If you create a new repository in an organization, the setting is inherited from what is configured in the organization settings.

52
Q

What does GitHub Copilot analyze to offer relevant suggestions as you are developing new code?

a. analyzes the context in the current file and related files

b. analyzes the context in all files within the repository

c. analyzes only the context within the current line of code

d. analyzes only the context within the current file

A

a. analyzes the context in the current file and related files

Overall explanation

GitHub Copilot analyzes the context in the file you are editing, as well as related files, and offers suggestions from within your text editor. GitHub Copilot is powered by a generative AI model developed by GitHub, OpenAI, and Microsoft.

WRONG ANSWERS:

Copilot analyzes the context in the current file and related files to offer relevant suggestions, not the entire repository

Copilot analyzes the context in the current file and related files to offer relevant suggestions, not just the current line of code

Copilot analyzes the context in the current file and related files to offer relevant suggestions, not just the current file that you are working on

53
Q

Your new team member has been assigned to help you manage the code base for the new release of the stock trading application within your organization. You are unsure how you were provided access to the code repository but would like to help your colleague get the appropriate access. What is the best approach?

a. reach out to the organization moderator to view which teams have access to the repository and then have them add your collegue to the appropriate team

b. add your new team member directly to the GitHub repository

c. reach out to the organization owner to view which teams have access to the repository and then have that owner or a team maintainer add your colleague to the appropriate team

d. instruct your colleague to contact GitHub support for access

A

c. reach out to the organization owner to view which teams have access to the repository and then have that owner or a team maintainer add your colleague to the appropriate team

Overall explanation

To perform any actions on GitHub a person must have sufficient access to the relevant account or resource. This access is controlled by permissions. A permission is the ability to perform a specific action. A role is a set of permissions you can assign to individuals or teams. Teams allow you to manage access for people in an organization. People with owner or team maintainer permissions can add organization members to teams to assign them their appropriate roles.

WRONG ANSWERS:

People with admin access to a repository can manage access to the repository, so while it may be possible to provide your team member access directly to the repository it is unclear if you have access to do so. In addition, adding a user directly without understanding the access process may lead to inappropriate permissions and security risks.

While GitHub support can assist with certain issues, access to specific repositories is typically managed by repository owners or administrators. Relying solely on GitHub support may not be the most efficient approach for repository access.

Organization moderators have access to block and unblock non-member contributors, set interaction limits, and hide comments in public repositories owned by the organization but they do not have access to assign members to teams.

54
Q

What is the primary purpose of assigning issues and pull requests on GitHub?

a. to avoid using comments for communication

b. to limit collaboration among team members

c. to get rid of weekly team meetings where issues and pull requests were initially assigned

d. to help organize and track work, indicating who is responsible for specific tasks

A

d. to help organize and track work, indicating who is responsible for specific tasks

Overall explanation

Assigning issues and pull requests helps clarify who is working on specific issues and pull requests for the project. Doing this helps organize and track work to see what needs to be worked on and who is helping with the work.

WRONG ANSWERS:

Assigning team members to issues does not eliminate commenting for communication. Comments are a key point in communication to discuss issues and other things that arise.

Assigning team members issues and pull requests on GitHub does not mean that your team should not have meetings anymore. Team meetings are a good place to talk about any blocks or issues that arise

You can assign up to 10 people on issues and pull requests in public repositories and private repositories for a paid account, so it does not limit collaboration among team members

55
Q

What security feature is only available with GitHub Advanced Security on private repositories?

a. security policy

b. dependabot alerts

c. code scanning

d. security advisories

A

c. code scanning

Overall explanation

Code scanning automatically detects security vulnerabilities and coding errors in new or modified code. Potential problems are highlighted, with detailed information, allowing you to fix the code before it’s merged into your default branch. Code scanning is available for all public repositories on GitHub.com. Code scanning is also available for private repositories owned by organizations that use GitHub Enterprise Cloud and have a license for GitHub Advanced Security.

WRONG ANSWERS:

The Security policy feature makes it easy for your users to confidentially report security vulnerabilities they’ve found in your repository and is available to all GitHub.com repositories.

Dependabot alerts provide alerts about dependencies that are known to contain security vulnerabilities, and choose whether to have pull requests generated automatically to update these dependencies. Dependabot alerts are available to all GitHub.com repositories.

Security advisories allow you to privately discuss and fix security vulnerabilities in your repository’s code. You can then publish a security advisory to alert your community to the vulnerability and encourage community members to upgrade. Security advisories are available to all GitHub.com repositories.

56
Q

What is the purpose of using project views in GitHub project management?

a. project views allow you to visualize and organize project tasks and issues across different boards, providing multiple perspectives on project progress

b. project views are used to set access permissions for team members in a GitHub project

c. project views help customize the appearance of a project’s README file

d. project views enable real-time collaboration on code editing within the GitHub repository

A

a. project views allow you to visualize and organize project tasks and issues across different boards, providing multiple perspectives on project progress

Overall explanation

The main purpose of project views in GitHub project management is to allow users to visualize and organize project tasks and issues across different boards. This provides multiple perspectives on project progress and helps in effective project organization.

WRONG ANSWERS:

Project views are not primarily used to customize the appearance of a project’s README file. They are more focused on project organization and visualization.

Project views are unrelated to real-time collaboration on code editing within the GitHub repository. They are more about organizing and visualizing project tasks.

Project views are not used to set access permissions for team members in a GitHub project. Access permissions are typically managed at the repository or organization level.

57
Q

Dan found an interesting code repository that Sarah contributed to, which would help him save time on a project. As a result, Dan followed Sarah on GitHub. What benefits will Dan see by following a GitHub user?

a. automatically trigger an email to Sarah that he is a new follower.

b. be listed in Sarah’s dashboard as someone he is following.

c. be able to see Sarah’s updates and activities in his personal dashboard.

d. be able to send a direct message to Sarah via GitHub Community

A

c. be able to see Sarah’s updates and activities in his personal dashboard.

Overall explanation

Once you star repositories or follow people, you will see updates on their activities on your personal dashboard.

WRONG ANSWERS:

GitHub does not default to automatically triggering emails for new followers

GitHub does not connect followers for direct messaging

Dan will be listed on Sarah’s dashboard as a follower but not as someone he is following

58
Q

By default, members of the organization are granted certain abilities. These abilities include:

a. configure code review assignments

b. ability to create repositories and project boards

c. invite people to join the organization

d. manage pull request reviews in the organization

A

b. ability to create repositories and project boards

Overall explanation

The default, non-administrative role for people in an organization is the organization member. By default, organization members have a number of permissions, including the ability to create repositories and project boards. Additional roles can be assigned to individuals and teams giving them giving them different sets of permissions in the organization.

WRONG ANSWERS:

Organization members by default do not have the ability to manage pull request reviews in the organization.

Organization members by default do not have the ability to configure code review assignments

Organization members by default do not have the ability to invite people to join the organization

59
Q

After passing the GitHub Foundations exam, Kyle is curious about upcoming features on GitHub and wants to explore new functionalities before they are officially released. What feature should he use to access and test these upcoming capabilities?

a. GitHub Discussions

b. GitHub Actions

c. GitHub Sponsors

d. GitHub Feature Previews

A

d. GitHub Feature Previews

Overall explanation

Feature Previews allow users like Kyle to access and test upcoming GitHub functionalities before they are officially released. Enabling feature previews provides a preview of the latest enhancements and features that GitHub is actively developing. These features are released in Alpha, Beta, and then finally go GA.

WRONG ANSWERS:

GitHub Actions is a service for automating workflows, such as continuous integration and deployment, and is not explicitly related to previewing upcoming GitHub features.

GitHub Sponsors is a program for supporting open-source developers financially and is not related to accessing feature previews.

GitHub Discussions is a feature for community discussions within a repository but is not focused explicitly on previewing upcoming features; it’s more centered around communication and collaboration.

60
Q
A
61
Q

While there are default labels for each new repository, what can an organization do to further categorize their issues, pull requests, and discussions based on their needs?

a. use an external source to import custom labels since there is no option to create custom labels

b. there is nothing a user can do, they are limited to using the default labels

c. change the name of a default label since there is a limit on the amount of labels a project can have

d. create custom labels in their project

A

d. create custom labels in their project

Overall explanation

GitHub provides the option to create a custom label for projects. This feature allows the organization working on a project to further categorize their issues, pull requests, and discussions based on their needs.

WRONG ANSWERS:

Although a user can edit a default label, there is no limit on the amount of labels a project can have, so the organization can just create a new label with no problems

Users can not import labels from external sources. This is not an issue because GitHub allows users to create custom labels

Users and organizations are not limited to using default labels. They can add, edit, and delete their own custom labels to further categorize their issues, pull requests, and discussions