Git is a Distributed Version Control System (VCS) which is originally developed in 2005 by Linus Torvalds (Creator of Linux) and is open source, i.e. freely available to use. It is the most popular and most used version control tool right now. A staggering number of software projects rely on Git for version control, including commercial projects as well as open source.
Ignored files are usually built artifacts and machine-generated files that can be derived from your repository source or should otherwise not be committed. Some common examples are:
dependency caches, such as the contents of /node_modules or /packages
compiled code, such as .o, .pyc, and .class files
build output directories, such as /bin, /out, or /target
files generated at runtime, such as .log, .lock, or .tmp
hidden system files, such as .DS_Store or Thumbs.db
personal IDE config files, such as .idea/workspace.xml
Imagine we have 100 files, and we want to commit only 99 files and ignore 1 file. This seems to be a very difficult situation.
To add the files to the GIT Staging area, we can use git add command. If we use git add ., it will add all 100 files to the GIT Staging area. Another way is to mention git add file1, file2….. soon, which is also a very tedious task.
Ignored files are tracked in a special file named as .gitignore named which is checked in at the root of the repository. We need to mention the file we want to ignore in .gitignore file.
Let me explain how to use .gitignore with the help of an example:-
Step 1 – Create a GIT Repository named as GitTest.
Step 2 – Right-click and click on Git Bash Here to open GitBash at that place.
Step 3 – Type git status to check if any file is not committed.
Step 4 – Create a new directory – config.
Step 5 – Create a file named test.class into the directory.
Step 6 – Type git status to check that config folder is untracked.
Step 7 – Create a .gitignore file.
Step 8 – Add the folder or file we want to ignore.
echo config/ >> .gitignore
Step 9 – Type git status again. This time, we can see that the untracked file is .gitignore not the config directory.
Congratulations!!! We are done. Have a happy Learning!!