안녕하세요 코드프레소 Java 웹 개발 체험단 활동 중인 핑솔입니다~!
코드프레소의 'Git 기본 플로우' 강의를 토대로 정리하였습니다.
Commit 생성
1. 스테이징 영역에 추가 - git add
2. 의미 있는 변경이면 커밋 생성 - git commit
인라인으로 커밋을 생성합니다.
git commit -m "Commit 2 for TestService"
커밋 히스토리 확인 - git log
참고 사항! -> Git 명령어 옵션 정보 확인
git log --help
명령어 뒤에 --help 옵션을 입력하면 웹 브라우저를 통해 해당 명령어의 매뉴얼 페이지가 실행됩니다.
git log --help 입력하면 나타나는 페이지
커밋 히스토리 관련 옵션
- 해당 커밋의 내용과 git diff의 결과를 볼 수 있습니다. (전체 커밋 대상)
git log -u
- 커밋 아이디를 적어주면 해당 커밋에 대한 내용만 볼 수 있습니다.
git log -u 'commit ID'
- log 뒤의 숫자는 최신 커밋을 최대 몇 개까지 보여줄 것인지를 말합니다.
git log -1
git log -2
- 커밋 히스토리를 볼 때 변경된 파일 이름까지 보입니다
git log --name-only
- 커밋을 간결하게 한 줄로 표현합니다. (커밋이 많거나 매우 빠르고 간결하게 보고 싶을 때 씁니다.)
git log --oneline
- git log -u 'commit ID'와 같은 내용이 나옵니다.
git show 'commit ID'
커밋 되돌리기
이미 커밋을 만들었는데,
- 커밋의 메시지를 변경하고 싶습니다.
- 커밋에 추가할 변경점이 있습니다.
이 때 커밋을 되돌려야합니다.
1) 커밋 메시지를 변경하고 싶을 때
git commit --amend
마지막 반영한 최신 커밋 메시지를 변경하고 싶을 때 최신 커밋 수정 가능한 에디터가 실행됩니다.
git commit --amend 명령어를 치면 최근 커밋 메시지인 'Commit 2 for TestService'를 'Commit 2-2 for TestService'로 변경할 수 있습니다.
하지만 주의할 점은 되돌린 commit message는 복구가 불가능합니다.
2) 커밋에 추가할 변경점이 있을 때
- 파일을 수정 후, 스테이징 영역에 추가
- git commit --amend 명령어로 커밋 생성
vi AmendService.java
git add AmendService.java
git commit --amend
이미 커밋을 만들었는데,
- 커밋 히스토리를 유지하면서 내용만 롤백하는 경우
- 히스토리 관리가 매우 중요한 실무에서 주로 사용됩니다.
git revert
Git에서는 "코드를 원복한다." = "반영한 특정 코드(변경점)를 제거한다." = "변경을 취소한다." = "반영한 커밋을 되돌린다." = "반영한 커밋을 revert 시키다."
Git에서는 원복의 단위가 커밋입니다.
git revert '마지막에 반영한 commit ID"
커밋의 기록은 남지만 AmendService.java파일은 deleted 되었습니다.
왜냐하면 두번째 커밋이 원복되었기 때문입니다.
다음 게시물에서는 원격게시물에서 커밋을 반영하는 방법을 알아보도록 하겠습니다!
go go~!
코드프레소 URL: https://www.codepresso.kr/
프리미엄 IT 교육 서비스 - 코드프레소
www.codepresso.kr
'WEB study > Git, GitLab' 카테고리의 다른 글
Git 브랜치의 이해 (1) - Git 브랜치 (0) | 2022.01.17 |
---|---|
Git 기본 플로우 이해 - (4) 원격 저장소에 commit 반영하기 (0) | 2022.01.13 |
Git 기본 플로우 이해 (2) - 커밋, 커밋 메시지, 명령어 (0) | 2022.01.12 |
Git 기본 플로우 이해 (1) - git 기본 flow, 상태 명령어, git add (0) | 2022.01.12 |
Git, GitLab 입문 (4) - GitLab 실습 (0) | 2022.01.12 |