Git
Introduction to Git
WebDevLee
2021. 10. 18. 11:38
Git의 기본 개념 및 문법
< Git >
Git is a software that allows you to keep track of changes made to a project over time. Git works by recording the changes you make to a project, storing those changes, then allowing you to reference them as needed.
< git init >
To turn the project directory into a Git project.
The word 'init' means initialize.
$ git init
# result example
Initialized empty Git repository in /home/ccuser/workspace/sorcerers-code/.git/
- The command sets up all the tools Git needs to begin tracking changes made to the project.
< Git Workflow >
- A Git project can be thought of as having three parts:
1. A Working Directory : where you’ll be doing all the work: creating, editing, deleting and organizing files.
2. A Staging Area : where you’ll list changes you make to the working directory.
3. A Repository : where Git permanently stores those changes as different versions of the project.
< git status >
To check the status of the changes as you changed the contents of the working directory.
$ git status
# result example
On branch master
Initial commit
Untracked files:
(use "git add <file>..." to include in what will be committed)
init_test.rb
scene-1.txt
nothing added to commit but untracked files present (use "git add" to track)
- Notice the file under Untracked files.
Untracked means that Git sees the file but has not started tracking changes yet.
< git add >
In order for Git to start tracking the file, the file needs to be added to the staging area.
$ git add filename
# example
$ git add scene-1.txt
$ git status
# result example
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: scene-1.txt
Untracked files:
(use "git add <file>..." to include in what will be committed)
add_test.rb
init_test.rb
- Notice that Git indicates the changes to be committed with “new file: scene-1.txt”.
Here Git tells us the file was added to the staging area.
< git restore >
To discard changes that is not committed in the working directory.
$ git restore filename
< git diff >
To check the differences between the working directory and the staging area.
$ git diff filename
# example
$ git diff scene-1.txt
# result example
diff --git a/scene-1.txt b/scene-1.txt
index c33ce4c..1e73963 100644
--- a/scene-1.txt
+++ b/scene-1.txt
@@ -1 +1,2 @@
Harry Programmer and the Sorcerer’s Code: Scene 1
+Dumblediff: I should've known you would be here, Professor McGonagit.
\ No newline at end of file
< git commit >
To permanently stores changes from the staging area inside the repository.
$ git commit
# example
$ git commit -m "Complete first line of dialogue"
- one more bit of code is needed for a commit: the option -m followed by a message.
< Standard Conventions for Commit Messages >
1. Must be in quotation marks.
2. Written in the present tense.
3. Should be brief (50 characters or less) when using -m.
reference : https://chris.beams.io/posts/git-commit/
< git log >
To see the list of all previous commit log.
$ git log
# result example
commit 62f323fe4cc5421cc5221f07083bcce0ef098de0
Author: codecademy <ccuser@codecademy.com>
Date: Mon Oct 18 00:34:48 2021 +0000
Update scene-1.txt