Skip to main content

The 3 Areas of GIT












                                   
Working, Staging, and Repository

There are 3 areas that GIT works  in to track, process, and deploy the files it's been pointed to. 

1.  Working Area:  These are the files that I (the user) am working on in my local file system (on my local computer) that I have instructed GIT to track.  

I am currently working in the 'StedmanLesson14.html' file.  I went ahead and made some changes to this file.  GIT can always compare my 'working area' with it's local repo (repository) and know what files have changed at any time.  If I were to do a 'git status' command on this file (check out my post on GIT commands), GIT will me that the  'StedmanLesson14.html' file that is located on my local directory has been modified.

See the picture below:
NOTICE IN RED:  it says MODIFIED    Git is suggesting to (use a "git add" with the file name) add it to the staging area


2. Staging Area:  Once a file has been given the 'git add' command, that file is moved to the "Staging Area" (aka:  The Index).  These are files that have been modified and could be candidates for a 'git commit' (meaning it will be saved to my local repository-- of course, this information has not been sent to the GIT HUB repository yet).  Notice the picture below where Git tells me there are files in the staging area waiting to be committed.

This is what it looks like after the 'git add' command has been issued:

NOTICE IN GREEN: it still says MODIFIED but now it is in Green (above it says "changes to be committed)



3.  GIT Repository Area (aka: Git Repo):  The third area GIT works in is the GIT Repository Area.  This is GIT's "backup" database (aka: repository).  I mentioned earlier, there is a local repository for each tracked directory you have on your local computer.  However, the files that were modified on your local computer (and saved on your local GIT repository) should be pushed (synched), with the GIT HUB repository, so that others in your group can see them on the GIT HUB server.

I am working with a team on the same files in the Stedman project.  We are all doing our own local work on this same file, and using GIT HUB to track everyone's changes.  We all have GIT installed on each of our own local computers.  NOW the time has come to 'push' the changes I made on the StedmanLesson14.html to the GIT HUB Repository.  That way, GIT HUB Repository will match my local GIT repository.  This is the third area GIT works in.  GIT HUB Repository keeps track of all the changes made to the files, who made those changes, when they were made, etc.  Additionally, when someone from the team wants to work on that file, they will have the most current up do date changes.   (Don't forget to check out my post on GIT commands).


Follow me as I learn to build my website bit by bit!    IronTreeDev.com


Photo by Sam Moghadam on Unsplash

Comments

Popular posts from this blog

XPATH and XPATH Expressions In XMLLINT

XPATH And XPATH Expressions Earlier, I told you about xmllint and xmllint for html files .  Let's say you just want to parse the <span> tags within your html file or just your <span lang="el"> tags? Enter:  Xpath. Xpath is yet another option available within the xmllint language. Remember, an Xpath is used to navigate through elements and attributes in xml and html documents.  Xpath uses Xpath Expressions to select nodes or node sets within a document. Example 1 .  Looking for all of the <span> tags within an html document. xmllint -- html -- xpath " // span" StedmanLesson10.html xmllint = This tells the command line that we are going to be using the xmllint language. space = because we always have space in between commands -- = Remember, these are the two hyphen-minus characters that we need to tell the command line that we are going to use an xmllint option. html = This is the xmllint option we want to ...

Back To The Basics

It's Been A LOOONG Minute since I have coded!!   Even so, I decided to give JavaScript another try.  I always seem to do good and then when I get to this one area, I always seem to hit a brick wall.  Well....nothing like getting back up and trying again right?   I decided to try:  The Complete JavaScript Course 2025: From Zero to Expert! by Jonas Schmedtmann.   So far, he seems to explain things in a way my brain understands it.  💁 To let you know how much I have forgotten in the coding world, I couldn't even remember how to write the basic commands for an HTML document! Yesterday I started the fundamentals free course and I am so glad that I did.  Because of time, I only made it through the JavaScript History and Setup chapter, but that chapter was enough to get my memory flowing again!   It started to feel familiar and I quickly remembered why I enjoyed coding so much.  Yesterday and this morning, I just erased and...

XMLLINT for HTML: Cleaning up the HTML Code

Getting That MESS Cleaned Up! In an earlier post, we learned about xmllint .  Today, I want to talk about cleaning up the code for an HTML file. When we have an xml file, xmllint is used.  For an html file, we use the following command in the command line: xmllint --html <filename goes here>         Here is an actual command on my command line for running xmllint for my StedmanLesson10.html file. In the photo above, you see that I start off the command with xmllint. The next thing is a space and then a --html.  The two -- are two hyphen-minus characters that are used to specify long options (Basically there are options that can be used within xmllint.  The two hyphen-minus characters are saying an option is going to be used.  In this case, that option will be html - because we are going to do an xmllint on an html file). After that you see a space and then the name of the html file I want t...