Difference between revisions of "Git"

From Teknologisk videncenter
Jump to: navigation, search
m
m
Line 52: Line 52:
 
'''Note:''' When adding a directory - the directory is not tracked for new files  
 
'''Note:''' When adding a directory - the directory is not tracked for new files  
 
|-
 
|-
|git diff [file...]||See modified files content - files not staged (Use git add to stage)
+
|git diff [file...]||See modified files content - files not staged (Use '''git add''' to stage)
 
|-
 
|-
 
|git diff --staged [file...]||See staged files modified but not committed
 
|git diff --staged [file...]||See staged files modified but not committed

Revision as of 07:04, 22 December 2022

Install git

Download git from https://git-scm.com/download/win and install it.

Learn basic git by watching this video tutorial: Learn git in 3 hours

Basic configuration

From terminal issue the following commands: (Windows start the git bash app)

git config --global user.name "Henrik Thomsen"
git config --global user.email "heth@mercantec.dk"

It will create a ~/.gitconfig file for the user

Create a new git project

mkdir project
cd project
git init

git init will create a .git directory

File tracking states

A specified file can be in one of four states

State Explanation
Untracked The file is not tracked by git and changes are not recorded
Unmodified The file is tracked by git and has not changed since it's last commit
Modified The file is tracked by git and has changed since it's last commit
Staged means that you have marked a modified file in its current version to go into your next commit snapshot.

File tracking lifecycle

Files can change state issuing git commands

Basic git commands

command Explanation
git status Status of git repository (must be inproject or project subfolder)
git add <file/dir>... Files added to the repository - Untracked->staged or Modified->staged

Note: When adding a directory - the directory is not tracked for new files

git diff [file...] See modified files content - files not staged (Use git add to stage)
git diff --staged [file...] See staged files modified but not committed

Why is it called Git?

Linus Torvalds has quipped about the name "git", which is British English slang for a stupid or unpleasant person. Torvalds said: "I'm an egotistical bastard, and I name all my projects after myself. First 'Linux', now 'git'."[1][2][3]

References