본문 바로가기
정리/Git hub

Git Bash 사용법

by 2744m 2019. 4. 19.

git config (최초 1회 실행)

// 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

git init

현재 디렉토리를 로컬저장소로 설정한다.

// 로컬저장소로 설정한다.

// (master) 브랜치로 보이면 성공한 것이다.

git init

 

// 만약 init을 취소하려면 아래의 명령어를 입력한다.

rm -r .git

git status

로컬저장소의 현재 상태를 보여준다.

 

git add
파일을 준비영역(Staging Area)으로 옮긴다.

// a.cpp 파일만 추가

git add a.cpp

 

// 워킹 디렉터리 내 모든 파일을 추가

git add .

 

// 명령 프롬프트에서 상호작용하면서 추가 (나갈땐 q를 입력)

git add -i

 

// 진행중인 파일일 경우, Staging Area에서 워킹 디렉터리로 옮겨온다. 

$git rm --cached a.cpp

$git rm ---cached .

 

git commit

준비영역(Staging Area)의 파일을 로컬저장소에 저장한다.

// 간단한 커밋 메시지를 입력후 커밋

git commit -"커밋 메시지"

 

// Staging Area에 들어간 파일에 대해서만 (워킹 디렉터리는 적용 X)

git commit --"커밋 메시지"

git remote

로컬저장소와 원격저장소를 연결한다.

// Github 원격저장소와 연결한다.

git remote add origin [자신의 Github 원격저장소 주소]

 

// 연결된 원격저장소 확인한다.

remote -v

git push

// 원격저장소에 저장한다.

git push -u origin master

 

// 에러 - ! [rejected] master -> master (fetch first)

// 이미 변경된 파일이 원격저장소에 있을경우 발생

git pull origin master 

 

// 에러 - ! [rejected] master -> master (non-fast-forward)

git push origin +master

 

심화과정

diff
워킹 디렉터리와 다른 커밋을 비교한다.

1) 현재 브랜치의 마지막 커밋과의 차이점 비교
$git diff

2) 특정 커밋과의 차이점 비교
$git diff [Commit ID]

3) 특정 커밋과 특정 파일의 차이점 비교
$git diff [Commit ID] -- [파일 경로]

branch
브랜치를 생성, 수정, 삭제 등을 한다.

1) 브랜치 보기
$git branch

2) 브랜치 생성
$git branch [브랜치명]

3) 브랜치 수정
$git branch -m [브랜치명] [바꿀이름]

4) 브랜치 삭제
$git branch -d [브랜치명]

checkout
워킹 디렉터리의 소스를 특정 커밋 또는 특정 브랜치로 변경

1) 특정 브랜치로 워킹 디렉터리 변경
$git checkout [브랜치명]

2) 특정 커밋으로 워킹 디렉터리 변경
$git checkout [Commit ID]

3) 특정 파일을 해당 브랜치 또는 커밋 상태로 변경 (원복)
$git checkout [돌아갈 Commit ID] -- [파일 경로]
*충돌 방지를 위해 브랜치명을 확인하고, 파일 추가 및 수정한 뒤 커밋해야 한다.

4) 브랜치 생성 및 체크아웃을 같이 할 경우
$git checkout -b develop

merge
다른 두개의 브랜치 소스를 병합한다.

$git checkout master
$git merge develop

*같은 파일의 같은 위치의 내용이 변경된 경우 충돌이 발생한다.

'정리 > Git hub' 카테고리의 다른 글

fatal: refusing to merge unrelated histories 해결법  (0) 2019.04.25

댓글