Version Control Systems are softwares tools that help a software team to manage changes to their source code. It keeps track of every modification to the code. If a mistake is made, developers can compare earlier versions of the code and/or revert back the changes to help fix the mistakes without disrupting the other team members.
As of now, the most widely used modern version control systems in the world are Git and TFS. Git is a mature, actively maintained open source project originally developed by Linus Torvalds, the famous creator of the Linux operating system kernel, in the year 2005.
Having a distributed architecture, Git is an example of "Distributed Version Control System" (DVCS). Rather than having only one single place for the full version history, every developer's working copy of the code can be treated as a repository in Git. In addition to being distributed, Git has been designed with performance, security and flexibility in mind.
- How to List the remote connections you have to other repositories?
- How to List the remote connections including URLs?
- How to Create a new connection to a remote repository?
- How to Remove the connection to the remote repository?
- How to Rename a remote connection?
- How to List all local branches?
- How to List all remote branches?
- How to List all existing branches with the latest commit comment?
- How to Create a new local branch based on current HEAD?
- How to Create a new tracking branch based on remote?
- How to Switch your HEAD to a branch?
- How to Move or rename a local branch?
- How to Move or rename a local branch (forcefully)?
- How to Delete a local branch?
- How to Delete a local branch (forcefully)?
- How to Delete a remote branch?
- How to Fetch all branches from remote repository?
- How to Fetch from a specific remote branch?
- How to Fetch all tags from the remote?
- How to Pull from remote repository?
- How to Pull from remote via rebase?
- How to Add specific file(s) or directory to the index?
- How to Update all files in the entire working tree?
- How to Update specific files in the entire working tree?
- How to Interactively choose hunks of patch between the index and the work tree?
- How to Pick and choose lines of the patch to apply?
- How to Update the index just where it already has an entry matching filepath?
- How to Update the index by adding new files that are unknown to the index?
- How to Record only the fact that the path will be added later?
- How to Refresh the information in the index whithout adding the files?
- How to Continue adding files without aborting on errors?
- How to Add modified contents in the working tree interactively?
- How to Force renaming or moving of a file even if the target exists in Git repository?
- How to Skip move or rename actions in Git on an error condition?
- How to Remove a file from working tree and index?
- How to Remove all files from the Git directory?
- How to Forcefully remove the file and the index?
- How to Recursively remove files in folder and subfolders from Git repository?
- How to Force to recursively remove files in folder and subfolders from Git repository?
- How to Record changes to the repository?
- How to Record changes to the repository with a commit message?
- How to Automatically stage files that have been modified and deleted?
- How to Use the interactive patch selector to chose changes to commit?
- How to Commit by using an existing commit message (opens editor)?
- How to Commit by using an existing commit message and authorship?
- How to Take the commit message from the given file?
- How to Add Signed-off-by line at the end of commit message?
- How to Amend a commit giving user a choice to update the commit message?
- How to Amend a commit replacing the previous commit message?
- How to Amend a commit with author details?
- How to List all the tags?
- How to Search tags for a particular pattern?
- How to Show a tag data?
- How to Create a Lightweight Tag?
- How to Create an Annotated Tag?
- How to Create a tag for a specific commit?
- How to Push a specific tag to remote?
- How to Push all the tags to remote?
- How to Checkout a specific tag to local?
- How to Show the working tree status output in short-format?
- How to Show the branch and tracking info in short-format?
- How to Show the working tree status output in long-format?
- How to Show no untracked files from the working tree status?
- How to Show untracked files and directories from the working tree status?
- How to Show all, including individual files in untracked directories from the working tree status?
- How to Push changes of current branch to remote?
- How to Push changes to a specific branch?
- How to Push the current branch to the same name on remote?
- How to Push matching branches to origin?
- How to Push the current branch to the remote ref matching master in the origin?
- How to Push the current branch forcefully to remote?
- How to Push all branches to remote?
- How to Push a single tag to remote?
- How to Push all the tags to remote?
- How to Push the tags to a remote branch?
- How to Rename a remote branch by pushing local branch?
- How to Remove remote branches that don’t have a local counterpart?
- How to Delete a remote branch?
- How to Add tracking refs for every branch that is up to date or pushed?
- How to Record the current state of working directory, index it and clean?
- How to Stash your local modifications with a message?
- How to Stash local modifications including all untracked files?
- How to Stash local modifications including all ignored files?
- How to List the stashes that you currently have?
- How to Show the changes recorded in the latest stash?
- How to Show the changes recorded in the stash no. provided?
- How to Remove the last stashed state from the stash list and apply?
- How to Remove a single stashed state from the stash list and apply?
- How to Apply the latest stash without removing from stash list?
- How to Apply the stash without removing from stash list?
- How to Create and check out a new branch from the stash?
- How to Remove all the stashed states?
- How to Remove the last stashed state from the stash list?
- How to Remove a single stashed state from the stash list?
- How to Remove untracked files from the current working tree?
- How to Remove untracked directories in addition to untracked files?
- How to Forcefully clean the current working tree?
- How to Clean working tree in interactive mode?
- How to Clean working tree without using the standard ignore rules?
- How to Remove only files ignored by Git?
- How to Clean working tree to default state?
- How to Reset the current HEAD to last commit state?
- How to Reset the current HEAD of the specified path to last commit state?
- How to Reset the current branch to a specific commit?
- How to Reset the HEAD without touching the index file or the working tree?
- How to Reset the HEAD to a commit without touching the index file or the working tree?
- How to Reset the index but not the working tree (preserving the changes)?
- How to Reset the index to a commit but not the working tree (preserving the changes)?
- How to Reset the index and working tree?
- How to Reset the index and working tree to a specified commit?
- How to Reset the index and update the files in the working tree that are different?
- How to Reset the index to a commit and update the files in the working tree that are different?
- How to Reset the index and keep the files in the working tree that are different?
- How to Reset the index to a commit and keep the files in the working tree that are different?
Just awesome, and thank you, Kunal! 💜 If possible, please create PowerShell for beginners (just a suggestion, though).