git 간단한 사용법

0.설정하기

// git commit에 사용될 username
git config --global user.name "your_name"
// git commit에 사용될 email
git config --global user.email "your_email@example.com
// 설정한 내용을 아래의 명령어를 통해서 확인할 수 있다.
git config --list

 1.로컬저장소 생성하기

//로컬저장소로 사용할 폴더생성
mkdir MyProject

cd MyProject

//git init - 로컬저장소를 시작으로 새로운 프로젝트를 시작하는 경우에 사용되며 비어있는 git 저장소가 생성이 된다.
//git clone - 원격저장소에 있는 프로젝트를 받아와서 로컬저장소에 만드는 방법이다.
git init

 

2.로컬저장소에 저장하기

touch Readme.md

//파일을 생성후 커맨드를 실행하면 아래와 같은 내용을 볼수 있다.
git status

//프로젝트의 master브랜츠상에 있다는 것을 말한다.
On branch master    

Initial commit

Untracked files:  //git에 등록되지 않은 파일 목록을 보여준다.
 (use "git add <file>..." to include in what will be committed)

 Readme.md

nothing added to commit but untracked files present (use "git add" to track)

//git으로 관리할 파일을 등록해준다.
git add Readme.md
//git add 후 아래의 커맨드를 실행해보면 Readme.md파일이 등록된것을 확인할수 있다.
git status

On branch master

Initial commit

Changes to be committed:
 (use "git rm --cached <file>..." to unstage)

 new file: Readme.md

//로컬저장소에 저장한다.
git commit -m "initial commit"

 

 3.로컬저장소와  원격저장소 연결하기

//github의원격저장소와 연결한다.
git remote add origin https://github.com/username/myproject.git
//로컬 저장소가 알고있는 원격저장소에 대한 모든 항목을 보여준다. 
git remote -v

 

4.원격저장소에 저장하기

//master branch에 push한다.
git push origin master

//fatal: The current branch master has no upstream branch. 브랜치가 원격저장소에 없을경우 발생
git push -u origin master //-u 원격저장소에 master라는 branch를 생성하고 push한다.

// ! [rejected]        master -> master (fetch first) 이미 변경된 파일이 원격저장소에 있을경우 발생
git pull origin master


//pull - 원격저장소의 내용을 가져와 로컬저장소의 내용과 자동으로 병합작업을 수행한다.
//fetch - 원격저장소의 내용을 확인만 하고 로컬저장소의 내용과 병합작업을 수행하지 않는다.

 

요약

mkdir ~/MyProject   // 작업 디렉토리 생성
cd ~/myproject      // 디렉토리로 들어가서
git init            // 로컬저장소로 적용
git status          // 로컬저장소 상태 확인
git add 파일         // 깃 목록에 파일추가
git add .           // 깃 목록에 디렉토리의 모든 파일추가
git commit -m “커밋 코멘트” // 로컬저장소에 커밋

git remote add origin https://github.com/username/myproject.git // 로컬과 원격 저장소를 연결
git remote -v // 연결된 원격저장소확인
git push origin master // 원격저장소에 push