0% found this document useful (0 votes)
1 views

Git (Version Control Tool)

Git is a distributed version control system that enables multiple developers to collaborate on projects while tracking changes over time. It was created by Linus Torvalds in 2005 to address the limitations of existing version control systems. Key features include tracking changes, collaboration, history management, branching and merging, and backup and recovery.

Uploaded by

Awanish Gupta
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views

Git (Version Control Tool)

Git is a distributed version control system that enables multiple developers to collaborate on projects while tracking changes over time. It was created by Linus Torvalds in 2005 to address the limitations of existing version control systems. Key features include tracking changes, collaboration, history management, branching and merging, and backup and recovery.

Uploaded by

Awanish Gupta
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 9

Git (version control tool)

Version Control Tool


• A Version Control Tool (VCT) is software that helps track changes to
files and manage the history of a project over time.
• These tools are crucial for collaborative work, especially in software
development, where multiple developers may work on the same files
or parts of a project at the same time.
Key Features of Version Control
Tools:
1.Track Changes: A version control system records every change made to the files (code,
documents, etc.), allowing you to see who made a change, what was changed, and when it
was changed.
2.Collaboration: Multiple people can work on the same project simultaneously without
overwriting each other’s changes. Version control tools ensure that team members can
synchronize their work and resolve conflicts when they modify the same files.
3.History: All previous versions of the project are stored, so you can go back to a specific
version or state if necessary. This is especially useful for undoing mistakes or recovering lost
work.
4.Branching and Merging: Version control systems allow developers to create branches, which
are isolated environments where changes can be made without affecting the main project.
Once changes are finalized, the branch can be merged back into the main codebase.
5.Backup and Recovery: Since a complete history of the project is stored, version control tools
act as a backup, allowing you to restore your project if anything goes wrong.
Types of VCS
• 1. Centralized Version Control System (CVCS):
• Examples: SVN (Subversion), CVS (Concurrent Versions System)
• In CVCS, there is a single central server that holds the repository. All changes
are made on that central repository.
• How it works: Developers check out files from the central server, make
changes, and then commit their updates back to the server.
• Advantages:
• Centralized control and single point of truth.
• Easier to manage user permissions and access control.
• Disadvantages:
• If the central server goes down, no one can commit changes.
• Offline work is limited, since you need access to the central server to commit or
view history.
Types of VCS
• 2. Distributed Version Control System (DVCS):
• Examples: Git, Mercurial, GNU-Bazaar
• In DVCS, every developer has a full copy of the entire repository, including all history and
branches.
• How it works: Developers can work independently on their local machines, making
commits to their local repository. Changes can then be synchronized with a remote
repository, such as GitHub or GitLab.
• Advantages:
• No single point of failure: Everyone has a complete copy of the project.
• Offline work is fully supported: You can commit, view history, and branch locally without needing
network access.
• Faster operations: Since most actions are local, things like commits, diffs, and history viewing are
much quicker.
• Disadvantages:
• Initial learning curve for understanding branching, merging, and resolving conflicts.
VCS
Git
• Git is a distributed version control system (VCS) that allows multiple people
to work on a project while tracking changes to files over time.
• It helps in managing code and collaboration among developers by keeping a
history of changes and facilitating coordination.
• Git was created by Linus Torvalds in 2005 to help manage the development
of the Linux kernel, as the existing version control systems (VCS) were
either too slow or didn’t meet the distributed needs of the project.
• The full form of Git is not an acronym. However, the name was coined by its
creator, Linus Torvalds, as a playful term. In British English slang, "git" can
mean an unpleasant or silly person, and Linus jokingly referred to himself
as such when naming the system.
• https://git-scm.com/docs/gittutorial

• https://stackoverflow.com/questions/315911/git-for-beginners-the-
definitive-practical-guide#323764

You might also like