** commit을 생성하기 전에 각 버전을 누가 만들었는지 알기 위해 내 정보를 미리 등록합니다.
git config --global user.email "이메일"
git config --global user.name "이름"
1. commit 생성
파일을 수정 후 git add 명령어로 스테이징 영역에 등록했다면 commit을 생성할 차례입니다. commit 메시지를 간단하게 입력한다면 -m 옵션을 사용합니다.
git commit -m "add .gitignore file"
** 만약 좀 더 자세하게 commit 메시지를 작성한다면 git commit 명령어를 실행합니다. 실행하면 현재 commit을 기록하는 브랜치, 어떤 파일에 commit이 추가되는지 알 수 있습니다. 키보드 i를 입력하면 입력모드로 전환되고, commit 메시지를 작성할 수 있습니다. (#은 주석입니다.) 그 후 esc 키를 입력하고 :wq 입력 (저장하고 종료라는 의미)하고 enter 키를 눌러 저장합니다.
** 만약 스테이징 영역에 있는 변경사항을 작업 디렉터리에 내릴려면 git reset <파일명> 명령어를 실행합니다.
2. commit 조회
commit 로그를 조회하기 위해서는 git log 명령어를 실행합니다.
** commit 뒤에 있는 문자열은 체크섬으로 commit을 식별하는 고유한 데이터 단위이고, HEAD 포인터는 현재 작업하는 브랜치 중 최종 commit을 가리킵니다.
** 이전 commit을 돌아가고 싶다면 git checkout 명령어를 사용하면 됩니다. 다시 최신 commit으로 돌아가고 싶다면 git checkout - 명령어를 실행하면 됩니다.
git checkout <이전 commit 체크섬>
3. commit 수정
commit 작업을 하다 보면 메시지를 잘못 입력했거나, 커밋에 포함되어야 할 파일이 제외된 경우 등이 있습니다.
3-1) commit 수정하는 법
git commit --amend -m "Add .gitignore File"
** 만약 원격저장소에 푸시한 commit을 수정하려면 수정 후 원격저장소에 git push --force 브랜치명 명령어를 실행합니다.
3-2) 파일 추가하는 법 : 파일을 열어 수정한 후 git add 명령어 실행 후 git commit --amend --no-edit 명령어를 실행합니다. 그러면 추가 변경 내용을 기존 commit에 반영할 수 있습니다. (--no-edit 에디터를 띄우지 않고, 메시지를 수정하지 않겠다는 의미입니다.)
git commit --amend --no-edit
3. commit 푸시
이제 푸시를 해보겠습니다. 여기서 푸시한다는 것은 지역저장소에 있는 commit을 원격저장소에 등록한다는 의미입니다.
먼저 git remote -v 명령어를 실행해 원격저장소를 확인해 보겠습니다.
해당 원격저장소에 지역저장소에 저장된 commit을 git push 명령어로 등록하겠습니다.
# git push [저장소] [브랜치]
git push origin master
원격저장소(github)에 가면 commit이 등록된 것을 알 수 있습니다.
** 원격저장소가 등록되어 있지 않다면 git remote add origin 명령어로 등록할 수 있습니다. (origin은 특정 원격저장소를 식별하는 이름입니다. 만약 git remote add origin2 [새로운 원격저장소 주소]를 하면 하나의 지역저장소에 2개의 원격저장소를 등록할 수 있습니다. 푸시를 할 경우 git push origin2 master로 하면 됩니다.)
git remote add origin <원격저장소 주소>
'Dev > Git' 카테고리의 다른 글
[GitHub] 6. commit 이력 조작하는 법 (cherry-pick, reset, revert) (0) | 2023.08.31 |
---|---|
[GitHub] 5. 브랜치 생성, 삭제, 병합하는 법 (branch, merge) (0) | 2023.08.23 |
[GitHub] 4. 원격저장소 복제하는 법 (clone, pull) (0) | 2023.08.22 |
[GitHub] 2. git 작업 트리란? (0) | 2023.08.14 |
[GitHub] 1. git을 왜 사용하는가? (+ 원격저장소, 지역저장소 생성) (0) | 2023.08.11 |
댓글