Unit 2: Version Control & Source Code Management - Subjective Questions

INT331 — Fundamentals Of Devops • Practice Questions with Detailed Answers

20 questions

1

Why is Version Control important in software development? Explain its key benefits.

2

Distinguish between Centralized Version Control Systems (CVCS) and Distributed Version Control Systems (DVCS).

3

What is a Git Repository? Explain the difference between a local and a remote repository.

4

Explain the basic Git operations: git init, git add, git commit, git push, and git pull with their purpose.

5

Describe the three states of a file in Git and the areas they correspond to.

6

What is a Commit in Git? Explain the anatomy of a commit and the role of the SHA-1 hash.

7

What is Branching in Git? Explain its importance and demonstrate creating and switching branches with commands.

8

Explain Merging in Git. Distinguish between a Fast-Forward Merge and a Three-Way Merge.

9

What are Merge Conflicts? Describe how they occur and the steps to resolve them.

10

What is Tagging in Git? Differentiate between Lightweight and Annotated tags.

11

Explain Rebasing in Git. How does it differ from merging, and what is the 'Golden Rule of Rebasing'?

12

What is Git Stashing? Explain its use cases and the common stash commands.

13

Describe the GitHub Flow workflow. What are its main steps and advantages?

14

Explain the Feature Branch Workflow. Compare it with the GitHub Flow.

15

What are GitHub Issues? Explain their purpose and key features in project management.

16

What is a Pull Request (PR)? Describe its lifecycle and importance in collaborative development.

17

What are GitHub Discussions? How do they differ from GitHub Issues?

18

Explain the complete Git remote workflow for cloning a repository, making changes, and contributing back, including relevant commands. (10 Marks)

19

Compare Merging and Rebasing in detail with examples, advantages, disadvantages, and when to use each. (10 Marks)

20

Describe a real-world scenario of resolving a merge conflict step-by-step, including the commands and file modifications involved. (10 Marks)