본문 바로가기
CS

GIT Bash로 커밋, 푸시를 해보자!

안녕하세요.

커피마시다가 키보드에 쏟은 하프 입니다.

 

그동안의 Git 명령어를 사용하면서 많이 사용하는 명령어를 위주로 사용을 해보도록 하겠습니다.

저장소는 깃허브로 사용을 하겠습니다.

 

 

 

📝 목차

 

 

초기 설정

git bash

깃허브를 설정하다보면 꼭 설치해야 하는 부분은 git bash 입니다.

설치가 안되어 있다면 설치 후 오도록 합시다!

 

편집기의 경우는 vscode로 하였습니다.

 

git init

현재 경로에 깃 저장소를 설정하기 위해서는 git init으로 설정이 필요합니다.

git init을 입력하여 보면 다음과 같이 깃 저장소가 설정이 됩니다.

 

.git 폴더가 생성이 된것을 볼 수 있습니다.

 

 

Git Status

git status

git status는 현재 untracked에서 tracked로 변환된 목록들을 출력해줍니다.

 

이렇게 untracked files 들은 빨간색으로 표기 됩니다.

 

Git Add

git add

git add는 git commit의 전 단계 입니다.

스테이징의 단계로 untracked를 tracked로 변화되는 과정 입니다.

변화되지 않은 파일들을 추적하여 추가하는 것을 말합니다.

이렇게 하는 이유는 버전관리의 용이성 때문에 그렇습니다.

 

문제가 생겨서 되돌릴(롤백)때도 용이 합니다.

 

 

git add .

현재 폴더에서 추가되거나 변화된 파일들을 untracked를 tracked로 변화되는 과정입니다.

 

changes to be committed에 추가했던 파일들이 보이는걸 볼 수 있습니다.

git add . 했을 시 어떠한 문구가 뜨지 않아서.. 확인에 어려움이 있을 수 있겠습니다.

 

 

git add 파일명

현재 폴더에서 특정 파일명으로 tracked로 변화하는 과정입니다. 

 

document2.txt를 추가 후 git add document2.txt 를 입력하게 되면, document2.txt 또한 추가되는걸 볼 수 있습니다.

 

 

Git Commit

git commit -m"메시지"

저장소에 저장하기 위해서는git commit -m "메시지" 를 사용하면 됩니다.

 

 

Git Push

레포지토리 생성

git push를 하기전에 git remote로 원격 저장소를 설정해야 합니다.

이미 설정되어 있다면, 넘어가면 됩니다.

 

깃허브에서 레포지토리를 생성하면 됩니다.

 

 

 

git remote

만들어진 깃 저장소로 git remote를 설정해줍니다.

git remote add orgin https://github.com/사용자 명/레포지토리 명.git

이러면 끝 입니다.

 

 

git push orgin [브랜치 명]

만들어진 깃 저장소로 푸시를 진행해 줍니다.

git push origin master

 

그러면 토탈 5개의 파일이 업로드가 되었다는 것을 볼 수 있습니다.

 

 

깃허브에도 잘 올라가 있습니다.

 

 

Git Add 되돌리기

만약 잘못 add 하여 되돌리고 싶을때가 있을겁니다.

그럴 땐 다음 명령어를 사용하여 해결할 수 있습니다.

 

git rm --cached 파일명

git rm --chached document2.txt를 했을 때

untracked files로 이동이 된 걸 볼 수 있습니다.

git reset HEAD

git reset HEAD는 전체 파일을 unstatged로 돌리는 명령어 입니다.

하지만, 초기 commit&push가 되어 있지 않다면 오류가 뜰 것 입니다.

 

이유는 보통 새로운 저장소에서 'git'이 현재 어떤 브랜치를 가리키는지 모르기 때문에 발생합니다.

 

 

정상적으로 된다면 다음과 같이 변경이 됩니다.

 

 

git reset HEAD 파일명

특정 파일만 add를 취소하기 위한 명령어 합니다.

 

 

Git Log

git log

깃 로그를 이용하면 이전에 커밋했던 목록들을 보여줍니다.

현재 어디가 HEAD인지도 알려 줍니다.

 

commit 에 이상한 영문자들이 길게 있는걸 볼 수 있는데, commit id 입니다.

이 id를 통해 이전 커밋으로 되돌리거나 다시 현재로 올 수 있습니다.

 

자세한 명령어는 여기에서 확인하실 수 있습니다.

 

 

이전 커밋으로 되돌리기

git reset --soft [이동할 commit id]

git reset 명령어에서 --soft는 현재 변경된 파일 내역들을 저장합니다.

그래서 다른 id로 이동하여도 현재 변경 상태를 유지함으로써 작업을 그대로 유지할 수 있습니다.

git reset --soft 796fc6cc8b76fcd567a7ca15769841b8d0653a5f

 

 

⚠️ git reset --hard [이동할 commit id]

--hard 옵션은.. 현재 변경된 파일 내역들을 삭제합니다.

만약 다른곳에 업로드가 되어있지 않다면.. 작성하셨던 코드는.. 영영 볼 수 없습니다

 브랜치 생성&이동

git branch [브랜치 이름]

브랜치를 생성하기 위해서는 git branch를 사용 합니다.

 

 

git checkout [브랜치 이름]

생성했던 브랜치로 이동하기 위해서는 git checkout [브랜치 이름]으로 사용해주면 됩니다.

그러면 오른쪽 끝에 test로 변경이 된것을 볼 수 있습니다.

 

 

다음에는 만들어진 브랜치를 가지고, 병합을 해보고 그래프로 확인해보는 과정을 가져보도록 합시다!