이 포스팅은 구름 에듀 강좌의 "Git으로 시작하는 협업 및 오픈소스 프로젝트" 를 기반으로 작성되었습니다.
이 강의의 강사이신 "나동빈" 님의 자료임을 밝힙니다.
상업적인 의도가 아닌, 공부한 것을 정리해놓는 목적의 포스팅입니다.
edu.goorm.io/learn/lecture/11528/git으로-시작하는-협업-및-오픈소스-프로젝트/info
@ 커밋 내역 확인 하기
깃허브에서 위 빨간 사각형에 해당하는 자기 자신의 닉네임을 클릭하면,
자신의 커밋 내역을 쉽게 확인할 수 있다.
또한 git log라는 명령어를 통해서도 확인이 가능하다.
다시 말해서 파일 내역이 언제 수정이 되어 적용되었는지 확인이 가능한 것이다.
이번 포스팅에서는 깃에서 커밋 내역을 수정하는 방법을 알아보도록 하겠다.
@ 커밋을 되돌려보자
# 특정 지점으로 프로젝트 자체를 되돌려 보자!
먼저 git pull 명령어를 이용하여,
내 저장소와 원격 저장소의 내역을 일치 시켜주자.
그리고 py_code 에 mul 함수를 추가해보자.
나는 이미 내 로컬 저장소와 원격 저장소의 상태가 똑같았기 때문에,
위와 같은 문구가 출력된다.
def add(a,b):
return a+b;
def sub(a,b):
return a-b;
def mul(a,b):
return a*b;
코드를 위와 같이 수정해주고, add 하고 commit 하고 push 까지 해준다.
git log 를 통해 log를 확인해보자.
커밋 내역이 보인다.
commit 옆에 해시 값은 그 커밋의 고유값이고,
git log를 빠져나오고 싶다면 'q' 키를 눌러주면 된다. (내역이 너무 길어서 : 표시가 뜰 때만 한정)
만약 이 커밋 중 제일 첫번재 버전으로 돌리고 싶다면,
reset 명령을 쓰면 된다.
아래와 같이 입력해주면 특정 지점으로 돌아가고, 이후의 커밋들은 다 지우겠다는 의미가 된다.
가장 첫번째 버전의 해시값을 통해서 reset 을 사용해보자.
다시 깃 로그를 살펴보면 해당 커밋 말고 이후의 커밋은 사라진 것을 확인할 수가 있다.
이외의 옵션으로도 커밋 내역을 보관하면서 돌릴 수 있는 등의
다양한 옵션(soft, mixed..)이 존재하는데 이는 아래 깃 사이트를 참고하길 바란다.
git-scm.com/book/ko/v2/Git-도구-Reset-명확히-알고-가기
하지만 이 상태는 원격저장소에는 저장되지 않는다.
그저 자신의 로컬 저장소에만 저장 되는 것이다.
원격 저장소에서도 하고 싶다면, git push를 해주면 된다.
그냥 git push명령을 사용하면 현재 로컬 저장소와 원격 저장소의 내용이 다르므로 에러가 발생한다.
이를 해결하려면 그냥 -f 옵션을 주어 강제로 맞춰주면 된다.
이렇게 되면 원격 저장소에서도 로컬 저장소와 동일하게 적용 된다.
@ 커밋 메세지 변경 방법
커밋 메세지를 수정해야 하는 경우 "git commit --amend" 명령어를 사용한다.
자동으로 특정 에디터가 실행된다.(유닉스 에디터)
여기서 첫번째 줄을 수정해준다.
나는 Create txt [~~] 를 Create [~~] 로 수정했다.
git log 해보자.
commit 메시지가 변경된 것을 알 수 있다.
강제로 push 시킨 후 원격 저장소에서 확인을 해보자.
커밋 내역을 확인해보면 정상적으로 커밋 메세지가 변경된 것을 확인 할 수 있다.
보통 커밋 메세지를 실수 할 경우 사용하는 기능이다.
'Archive > ETC' 카테고리의 다른 글
[ git & github ] Git Branch 충돌(Conflict) 처리 | 브랜치 충돌 처리 (0) | 2021.02.18 |
---|---|
[ git & github ] Git Branch 사용 | Git Branch 사용하기 (0) | 2021.02.18 |
[ git & github ] Git 저장소에 코드 수정 반영하기 (0) | 2021.02.18 |
[ git & github ] Git 동작 원리 (0) | 2021.02.18 |
[ git & github ] Git 등장 배경 | Git 장점 | Git 쓰는 이유 (0) | 2021.02.18 |