Git
In this tutorial we will learn to save changes in Git repository.
We use the git add
command when we want to add the changes in the working directory to the staging area.
If we want to stage (add) all changes in a file we pass the file path.
$ git add path/to/file
Example
$ git add index.php
If we want to stage (add) all changes in a directory we pass the directory path.
$ git add path/to/directory
Example
$ git add src/
If we want to stage (add) all changes in the working directory we use .
$ git add .
Going back to our git-project that we created in the previous tutorial, if we run the git status
command we will get the status of the Git repository.
$ git status
On branch master
Initial commit
nothing to commit (create/copy files and use "git add" to track)
From the above output we can easily tell that we are on the master branch and there is nothing to commit.
Now we will create a new file index.php inside the project folder using touch index.php
command.
$ touch index.php
Now, if we run the git status
command we will get an untracked file.
$ git status
On branch master
Initial commit
Untracked files:
(use "git add ..." to include in what will be committed)
index.php
nothing added to commit but untracked files present (use "git add" to track)
So, the output tells us that there are some untracked files. In this case, index.php
file.
Untracked files: A file that is not yet staged or committed.
To add a change in a file to the staging area we use git add [file]
command.
$ git add index.php
Now if we run the git status
command we will see that the index.php file is staged and ready to be committed.
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached ..." to unstage)
new file: index.php
Now, lets create a js directory inside the project folder and add a default.js file inside it.
$ mkdir js
$ touch js/default.js
Now if we run the git status
command we will see untracked files and staged file index.php the one we added earlier.
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached ..." to unstage)
new file: index.php
Untracked files:
(use "git add ..." to include in what will be committed)
js/
In the above output we can see that we have js/ directory that is untracked.
To stage the js directory we will run the following command.
$ git add js/
Now, the git status
command will show us all the files that are staged.
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached ..." to unstage)
new file: index.php
new file: js/default.js
To unstage a file that was staged using the git add
command we use the git reset [file]
command.
If we want to unstage lets say default.js file which is inside the js folder we will use the following command.
$ git reset js/default.js
Now, if we run the git status
command it will show js/ as untracked.
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached ..." to unstage)
new file: index.php
Untracked files:
(use "git add ..." to include in what will be committed)
js/
To unstage all staged files use git reset
command without filename.
In the next tutorial we will learn to commit the changes that were added to the staging area.
ADVERTISEMENT