top of page

50 most common GIT interview inquiries for SDET

To assist students and professionals preparing for Certified SDET Training Course the following list of frequently asked interview questions has been assembled. The whole list of SDET Interview questions is available here.

1. Describe GIT?

· GIT is a DVCS and a source code management system.

· Using the Code Management System (SCMS), which is used to monitor file modifications, permits going back to any specific change.

· It can manage both little and large projects quickly and effectively.

2. What distinguishes GIT and SVN from one another?

The following are the differences between GIT and SVN:

GIT

· A decentralised version control tool is called GIT.

· On the local system, the complete repository can be cloned.

· It is still possible to commit while offline.

· Push/Pull actions move more quickly.

· Upon commit, work is automatically shared.

SVN

· Centralized Version Control is a feature of SVN.

· A server-side repository houses the version history.

· All commits must be made online.

· Operations that push/pull are slower.

· Work is not automatically shared.

3. What benefits does GIT offer?

The following are some benefits of GIT:

· Data replication and redundancy are both feasible

· Excellent disc usage and network performance

· Each repository has a single.git directory

· extremely accessible service

· GIT is suitable for all project types

· Any project can be collaborated on very easily

4. What dialect is GIT written in?

The programming language used in GIT is C.

C makes sure that runtime overhead for high-level languages is minimised, which makes GIT quicker.

5. What does a GIT repository mean?

A GIT repository has a directory called.git where it stores all of the repository's metadata.

The entirety of the.git directory is only accessible via GIT.

6. How do I write a commit message? Which command do I use?

A commit message is created in GIT using the command git commit -a.

Git is told to commit the updated contents of all tracked files that have been modified when the -a option is used.

"git add file>" is used before git commit when a new file needs to be committed for the first time.

7. What does the GIT staging area or index mean?

Before they are finished, commits can be modified, formatted, and reviewed in an intermediate area.

A staging area, often known as an index, is this transitional space.

8. What differentiates Git Pull from Git Fetch?

· Git fetch retrieves any fresh information from a remote repository, but it doesn't incorporate that information into the working files

· Git pull takes data from a remote repository and combines it with the currently open working files

· If local modifications are not committed, it may also combine conflicts.

· git fetch plus git merge equals git pull

9. Git Stash: What Is It?

The working directory's current state is taken by Git Stash and

Stacking it results in a clean working directory by placing it on the stack for later.

When we need to go to another task but don't want to loose our previous work, we use Git Stash.

10. Git Stash drop: what is it?

The git stash drop command is used to remove the item that has been stashed from the list.

By default, it removes the most recent thing added to the stash, but if an argument is provided, it can also remove a particular item.

11. What purpose does git clone serve?

To make a duplicate of an existing GIT repository, use the git clone command.

The most popular method used by programmers to replicate a central repository to a local workspace is called a "git clone."

12. How can I tell if a particular branch has been merged into master?

Git branch -merged master displays all merged branches into the master.

Git branch -merged displays all merged branches into the head.

Git branch -no-merged displays all unmerged branches.

13. What purpose does git config serve?

Setting configuration options for GIT installations is simple with the git config command.

The git config command is used to specify user information, preferences, and repository behaviour.

For instance, after installing GIT, we configure the global username and email address. If we neglected that stage or wish to make adjustments, we can set them now.

Use the command git config -global user.name "First Name" to add a username.

This will add Email Address: git config -global user.email "emailAddress"

14. In GIT, how do you establish a repository?

Run the command "git init" to create a repository in GIT after creating a directory for the project if one doesn't already exist.

The project directory does not have to be empty for this operation to create a.git directory there.

15. What does branching in GIT serve as a purpose?

Using branching, you can simply move between two branches after creating a new one and waiting for a few commits. Multiple local branches that are completely independent of one another are possible with GIT.

Going back to earlier work will assist preserve the more recent work intact.

16. How are local and remote GIT branches deleted?

The following command should be used to remove a local GIT branch:

branch name = git branch -d

Using the following command, a remote GIT branch can be deleted:

git push -delete "remote name" "branch"

17. What distinguishes 'git' from

'git clone' and'remote'?

Git remote add merely adds a line to a git configuration that

provides a moniker for a specific URL.

In contrast, "git clone" generates a new directory by transferring the current remote repository into the specified local workspace.

18. What does the GIT command "git diff" do?

To display changes between commits, between a commit and the working tree, etc., use the git diff command.

The most frequent application of diff is to determine what changes have been made since the last commit.

For eg.:

The working directory and the local repository are compared using the git diff HEAD [filename] command.

git diff [filename] compares two files.

indexing working directory

Compare the index with the local repository using git diff -cached [filename].

19. What does GIT's "git checkout" command do?

The command "git checkout" is used to update folders.

or some files in the working tree can form another branch without those files.

adding it to the entire branch.

The git checkout command interacts with three different types of objects:

branches, files, and commits.

new-branch> git checkout -b

20. What does GIT's "git rm" command do?

The 'git rm' command can be used to delete a single file or a group of files.

It is used to delete files from the working directory as well as the staging index.

git rm DLA/*.txt: This command will delete all.txt files that are subdirectory children of the DLA directory as well as any of their subdirectories.

21. What does GIT's "hooks" section contain?

Shell scripts called GIT hooks are run before or after

GIT commands like commit, push, and receive that correspond to them.

Git hooks are an integrated feature, therefore there is no requirement to

Obtain them.

For instance, GIT will attempt to run a post-commit script following the commit.

22. How can a broken commit in GIT be fixed?

A broken commit in GIT can be fixed with the git command -amend command.

The commit patch in $Editor will be activated by this command. Simply alter the message on the file's first line, save the changes, and then exit.

23. Conflict in GIT: What is it?

In GIT, a conflict occurs when the current commit and the commit that has to be merged both make changes to the same part of the same file.

GIT is unable to determine which change should come first in this situation.

24. How many heads can be generated in a repository and what does the term "head" in GIT mean?

In a GIT, a "head" is only a reference to a commit object.

In every repository, a default header called "Master" is present.

Any quantity of heads can be found in a repository.

25. What is an additional GIT merging option, and what is the syntax for it?

In GIT, "rebasing" is an alternative to "merging."

Syntax:

Rebase Git [new-commit]

26. What does GIT's 'git add' command accomplish?

Changes to files in the working directory are added to the staging area using the command "git add."

It instructs GIT that certain edits to a specific file must be added to the next commit.

git add file>: Stage all modifications to the

file for upcoming commit.

git add directory>: Stage all changes for the upcoming commit in the specified directory.

27. What does "git log" mean in GIT?

To search for particular commits in the project history, use the git log command.

It can be searched by date, author, message, file, and other criteria.

etc.

For eg.:

Git log with the "yesterday" option

git log DLA as the author

28. What does the GIT command "git reset" do?

Git reset is used to undo all changes made to the staging area and local directory and returns them to their previous states.

Syntax:

git reload

29. GIT version control: what is it?

GIT version control is used to keep track of a group of files' past changes and has the ability to roll back the group of files to a previous version.

Every iteration takes a snapshot of the file system at a specific moment in time. A repository houses every file and its entire history.

30. Mention some of the best LINUX-compatible graphical GIT clients.

The top GIT clients for LINUX include:

· Wise Git

· Take Cola

· GIT UI

· qGit

· Git-g

· Giggle

31. What is contained in a commit object?

What's in the commit object is as follows:

· It includes a collection of files that show the status of a project at a certain period

· A reference to parent commit objects is present

· A 40-character string called the SHAI name, which uniquely identifies the commit object, is also included

32. Why is Subgit used? What is Subgit?

A tool called SubGit is utilised for a stress-free, seamless SVN to GIT conversion.

migration. It is a method for switching the entire firm over to GIT from SVN.

For the reasons listed below, it is frequently used:

· Compared to git-svn, it is significantly superior

· The currently installed infrastructure doesn't need to be changed

· It enables the use of all GIT and SVN functionalities

· It offers a real, stress-free moving experience

33. What does 'git status' accomplish?

The command "git status" is used to show the status of the staging area and the working directory.

It enables us to check which files are not being tracked by Git and whose modifications have not yet been staged.

Syntax:

status of git

34. What does the 'git stash apply' command do?

The command "git stash apply" is used to restore the saved modifications to the working directory.

When we wish to pick up where we left off with our job, we use it.

Syntax:

apply git stash

35. Uses for git instaweb

Git Instaweb instantly launches a web server with an interface into your local repository and directs a web browser there.

36. How do you combine the most recent N commits into one commit?

Using the following command, the last N commits of the

existing branch:

rebase -i in git

HEAD~{N}

N is the number of commits you want to remove.

When the aforementioned command is executed, an editor with a list of N commit messages, one per line, will open. These lines all start with the word "pick." The word "pick" can be changed to "squash" or "s" to instruct Git to merge the commit with the one before it. In order to consolidate all N commits into one, set every commit in the list to be squashed except the first one.

37. How can a commit from one branch be copied to another?

One commit can be copied from one branch to another using the cherry-pick command.

It enables the playback of a previous commit to the current directory or branch.

Just navigate to the desired branch and issue the command git cherry-pick hash of that commit.

38. How is a merging commit cherry-picked?

Cherry-pick uses diff to identify branch differences.

Due to the fact that merge commit is from a different branch, it has two

two changesets and two parents.

For eg.:

If we need to merge commit ref 43ad64c, we must use parent 1 as a basis and specify -m:

checkout release branch using git

cherry-pick -m 1 43ad64c in git

39. What exactly is GIT Bisect used for?

Git Bisect makes it simple to locate problematic commits. Rather than going through each and every commit to locate the one that the code that may have introduced a specific flaw, git bisect enables the user to do a kind of binary search on the repository's full history, and as a result facilitating the discovery of bad commits.

To determine which commit in the project's history has created an issue, this command employs a binary search technique. The commit is referred to as "good" prior to the introduction of issue and "bad" following the introduction of issue.

The command then chooses one of those commits and inquires as to what kind of commit it is. This procedure is repeated until the precise commit that introduced the change is found.

40. How will you add a new feature to the main branch? What commands will you use?

Using git, we can add a new feature to the main branch.

git pull or merge

commands.

Syntax:

merge in git

pull git

41. What distinguishes "git diff" from "git status"?

Git diff displays the variations between multiple commits as well as between the staging area and working directory.

Along with providing the state of the comparison with the branch's origin, Git status also offers information on the files that need to be staged in the working repository.

42. How can a quarrel be settled in GIT?

Any disagreement in GIT must first be addressed by editing the files to remove the incompatible changes, and then the resolved files must be added by using the 'git add' command.

To commit the repaired merge, use the 'git commit' command after that.

43. What does GIT fork mean?

A GIT repository's copy is what a Git fork is.

In the GIT ecosystem, forking down a repository allows one to experiment freely with various changes with little to no impact on the original project.

44. List a few companies that host GIT repositories.

These are a few of the well-known GIT repository hosting services:

GitHub

Bitbucket

GitLab

45. Describe the different branching techniques.

There are several branching tactics, including:

•Feature Branching: A feature branch contains all the updates for a certain feature. The feature gets merged into master once it has undergone thorough testing and validation.

•Task Branching: Each task is implemented on a separate branch, and the branch name contains the task key. Since the task key is present in the branch name, it is simple to determine which code implements which task using this.

•Release Branching: Once the develop branch has accumulated sufficient features for a release, we can clone a branch to create a release branch. The next release cycle is initiated when the release branch is created, thus no new features can be added beyond this point; only bug fixes are permitted.

46. Why is GIT superior to SVN?

An open-source version control system called GIT enables you to run projects in several iterations, each of which displays the many modifications that have been made to the code over time.

Additionally, it permits undoing and going back in time as needed those alterations

Each modification in GIT can be traced to a particular developer once it has been checked out and uploaded by another developer.

47. Is-tree in git is what?

A tree object with the mode, name, and SHA-1 value of the blob or tree is represented by the Git Is-tree function.

48. What does GIT's "git push" command do?

To update fresh local commits on a remote repository, use the 'git push' command.

Syntax:

push git

49. Why is it preferable to add a new commit rather than change an old one?

Always be sure to generate a new commit rather than changing a current commit, as the change will invalidate the previously preserved state from a commit.

If only the commit message needs to be altered, this is not a problem, but if the contents are also modified, there is a greater risk of omitting some crucial information.

50. What is accomplished by git pull origin master?

To grab the master branch from the origin, use git pull origin master the origin branch from the origin remote repository.

The local master branch is not impacted; only the current branch is.

Comments


bottom of page