How to Install and Configure Git on a Windows Server

This article is a beginner-friendly template to Git and can be used as a start point. It introduces newbies to Git concepts, its terminologies, and a few basic operations with concise examples. After referring to this guide, users will be able to use Git confidently in their projects .
Git is a distribute version control system. It is used for tracking changes in source code during the software exploitation action. It was initially designed and developed by Linus Torvalds for Linux kernel development. It is dislodge software distributed under the terms of the GPLv2 license. It chiefly focuses on accelerate, data integrity, distributed development, and non-linear workflows .
Git is the de facto standard in interpretation master systems. It became popular because of its accelerate and distributed development model. One might want to know what a distribute version control system is and how it is unlike from other version control systems.

A centralize interpretation control system uses a central server to store all files and enable collaboration. In this model, every process requires communication with the central server. however, this plan imposes a major limitation. The central server is a single compass point of failure. If it fails, all collaborators who depend on the server will be affected. This is where stagger version master systems come into the visualize. A spread translation dominance system does not rely on the handiness of the central server. Every exploiter gets the entire copy of the depository. Hence, it is possible to work on the depository even when the Git server is unavailable. The connectivity to the waiter is required only while syncing the changes .
A few salient features of Git are :

  • Free and open source
  • Inexpensive branching and merging
  • Distributed in nature
  • Implicit backup
  • Small, fast and less resource hungry

Basic terminology
This section discusses the terminology and operations of Git .
Working tree : This is a directory on the local anesthetic charge system where the reservoir code resides .
repository : repository is the workspace that contains source code and metadata of its versions. The local anesthetic repository resides on the local file system, whereas the outback depository resides on the remote control Git server .
commit : This is a Git object that represents the change put within the depository. A unique SHA-1 hashish is assigned to each perpetrate .
ringer : This is a Git operation that downloads the entire outback depository to the local anesthetic file arrangement .
pull : This syncs the local repository with the remote control repository by downloading new files .
advertise : This Git operation uploads files ( one or more commits ) from a local anesthetic repository to the outback depository .
Installation and configuration
Git is unblock and capable beginning software. One can download and use it without any restrictions. Follow the steps given below to install Git on a Windows waiter :
1. Go to https : // and download the latest interpretation of Git.
2. double chink on the installer and follow on-screen instructions.
3. Don ’ t forget to select the ‘ Windows Explorer Integration ’ option during frame-up. Please refer to Figure 1.
4. Go to the Start menu and plunge ‘ Git Bash ’. You should see a command immediate, as shown in Figure 2 .
We have successfully installed Git on a Windows machine. Let us configure it using CLI. Configure the drug user diagnose and electronic mail by executing the commands given below in a terminal :

$ git config --global “Jarvis”
$ git config --global “”
Note: Use your user name and e-mail address while configuring Git. This information will appear in each commit you perform.

nowadays, execute the command given below to validate the configuration :

$ git config –list

This instruction will generate the watch output :

filter.lfs.clean=git-lfs clean -- %f
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt

here, we can see the user name and e-mail address, which we configured earlier. Congrats ! You have successfully configured Git on your machine .
Basic Git workflow
Most of the times, you will be using the existing repository hosted in your organization ’ sulfur network. Hence, we will use a public repository for demonstration. We will walk through the basic Git work flow. As contribution of this work flow, we will perform the stick to steps in the order they are listed :
1. Download source code from the distant repository
2. Inspect the repository
3. Modify the depository and check the condition of the repository
4. upload files to the repository
5. Sync local repository to the distant repository
Download source code
Clone is a Git operation that downloads the outback repository to the local file system. For our demonstration, we will use the Redis repository hosted on GitHub. This repository is publicly accessible. To clone this repository, execute the control given below in the terminal :

$ git clone

In the above instruction, the ringer is Git ’ s sub-command, and the following argument is the unique URL of the repository. After successful completion, you should see an output similar to this :

Cloning into ‘redis’...
remote: Enumerating objects: 11, done.
remote: Counting objects: 100% (11/11), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 69075 (delta 1), reused 2 (delta 0), pack-reused 69064
Receiving objects: 100% (69075/69075), 92.93 MiB | 1.65 MiB/s, done.
Resolving deltas: 100% (48902/48902), done.
Updating files: 100% (837/837), done.

Execute the l instruction as follows to verify the download of the depository :

$ ls redis/

This command should generate the stick to output :

00-RELEASENOTES deps/ runtest-moduleapi* tests/
BUGS INSTALL redis.conf runtest-sentinel*
CONTRIBUTING Makefile runtest* sentinel.conf utils/
COPYING MANIFESTO runtest-cluster* src/

Inspect the repository
now that we have a copy of the distant repository on a local file system, let us inspect the depository. First, compact disk to redis as follows :

$ cd redis

To list all commits from the repository, execute the command :

$ git log

This dominate will show details of the commit. The output will appear in the UNIX beeper ( e.g., less ). One can use the up and down arrow keys to scroll through the commits. Press q to quit the beeper .
The rotter log command generates a long-winded output. Execute the command given below to generate the non-verbose output :

$ git log –oneline

This command should generate the trace output :

57b8e0069 support sentinel myid subcommand (#7858)
bea40e6a4 memory reporting of clients argv (#7874)
f87a47dc9 fix new build warning about getGenericCommand (#7882)
6418d767e redis-cli add control on raw format line delimiter (#7841)
66ee45b65 Add GET parameter to SET command (#7852)

In the above command, the beginning column is a unique SHA-1 hash of the commit. This prize is generated and assigned to each entrust automatically. In Git terminology, it is called a entrust id. The moment column is the give message, which was provided by the user. We can use the give idaho to check give contents. For case, the command given below shows the contents of the ‘ 57b8e0069 ’ perpetrate :

$ git show 57b8e0069

This command will show details of perpetrate like SHA-1 hash, the writer ’ mho name and electronic mail, date and fourth dimension, entrust message, and the actual code changes made. One can use the up and down arrow keys to scroll through the give and q to quit the UNIX beeper.
To see files belonging to the particular invest, use the –name-only choice as follows :

$ git show 57b8e0069 --name-only

This command will generate the surveil output :

commit 57b8e00695d037971 342cbcc43734a990bfaf081
Author: Wen Hui 
Date: Mon Oct 5 06:37:20 2020 -0400
support sentinel myid subcommand (#7858)


The above output shows that the src/sentinel.c file belongs to the 57b8e0069 ’ commit id .
Modify the repository
We can modify the repository by adding, removing, or editing files from the repository. Each process will change the status of the repository. Let us verify the condition by executing the command :

$ git status -s

This command will not generate any output signal, as the repository condition is clean and jerk.
Let us add, remove, and edit a file from the repository, and verify the status :

$ echo “This is sample file” > sample-file.txt
$ echo “Jarvis” >> CONTRIBUTING
$ git status -s

now the depository condition has been changed. The status instruction will show the follow output :

?? sample-file.txt

In the above end product, the letter ‘ M ’ in the beginning column indicates that there has been a change to the ‘ CONTRIBUTING ’ file. The letter ‘ D ’ indicates that the ‘ COPYING ’ file has been deleted. The ‘ ? ? ’ indicates that sample-file.txt is the new charge and Git doesn ’ triiodothyronine know anything about it .
To verify the changes made in the depository, execute the rotter diff control as follows :

$ git diff

This command will show output signal in the UNIX beeper. The lines in green with the ‘ + ’ symbol at the beginning represent the raw addition to the depository. The lines in crimson with the ‘ – ’ symbol at the beginning stage omission from the repository. figure 3 is the screenshot of the lapp .
Upload files to the repository
In the previous section, we made a few changes to the repository. however, those changes are distillery on the local file system. Let us upload them to the outback repository.
First, create a changeset. We will include all the three files in the changeset as follows :

$ git add CONTRIBUTING COPYING sample-file.txt
$ git status -s

The above command will generate the following end product :

A sample-file.txt

If you see cautiously, there is the letter ‘ A ’ before the sample-file.txt file, which indicates that it ’ s a new file in the repository and part of the stream changeset. now, let us create a commit :

$ git commit -m “Sample commit”

This command will generate the surveil output :

[unstable be159ed3d] Sample commit
3 files changed, 2 insertions(+), 10 deletions(-)
delete mode 100644 COPYING
create mode 100644 sample-file.txt

Let us verify the entrust using the log command as follows :

$ git log --oneline
be159ed3d (HEAD -> unstable) Sample commit

fantastic ! Our give appears in the repository. besides, a unique SHA-1 hashish is generated and assigned to it .
however, our changes are still confront on the local file arrangement. To send this invest to the remote control repository, execute a press command as follows :

$ git push

note : connectivity to the remote control Git server is needed to perform this operation.

Syncing the repository
In the previous section, we uploaded our changes to the remote control depository. similarly, other developers will upload their changes to the distant depository besides. Hence, we should sync our local repository sporadically. We can use the pull instruction for this :

$ git pull
Note: Connectivity to the remote Git server is needed to perform this operation too.
reservoir :
Category : Tech

About admin

I am the owner of the website, my purpose is to bring all the most useful information to users.

Check Also


Manage participants in a zoom meeting webinar

Call the people who attend the meet as follows Alternate host host Who scheduled the …

Leave a Reply

Your email address will not be published.