1. git archive
git archive명령으로 프로젝트 폴더 내의 소스코드 파일만 압축할 수 있다.
프로젝트 구성은 이렇다.
.git과 개발썸네일은 각각 폴더와 이미지 파일이다.
아래 명령어로 소스코드만 압축된 zip또는 tar파일을 생성할 수 있다.
git archive --format=[zip 혹은 tar] [브랜치명] -o [이름]
※ -o옵션: output
명령을 실행했더니 이렇게 main이라는 이름의 zip파일이 생성되었고,
소스코드 파일만 잘 압축되었다.
2. 특정 commit 주석 수정하기
git commit --amend은 최근 커밋 주석을 수정하는 명령이다.
그렇다면 특정 commit 주석 을 수정하는 방법도 있을까?
git rebase의 -i옵션을 이용하면 된다. i는 interactive를 의미한다.
git rebase는 원래 병합을 위한 명령이며, git merge와 차이점이 있다면 불필요한 내역을 제거하여 히스토리를 깔끔하게 확인할 수 있지만 복구가 쉽지 않기 때문에 위험하다는 단점이 있다.
먼저, 특정 commit을 지정하기 위해서는 그 commit의 id를 알아야 한다.
commit의 id만 알면 되기 때문에, git log에 --oneline옵션을 붙여서 [commit id, commit 주석] 쌍으로만 검색해보자.
이렇게 간단하게 날짜 내림차순으로 검색이 된다.
여기서, 바꾸고 싶은 commit의 이전 commit id가 필요하다.
git rebase -i [commit id]
예를 들어, id가 b7f8f00인 commit의 주석을 second work(kimjooyeok)에서 second work(lamb)로 바꾸고자 한다.
그래서 git rebase -i뒤에 그 이전 커밋 id인 e63c3b4을 입력했다.
그랬더니 id가 b7f8f00인 커밋이 맨 처음으로 출력되었다.
이제 아래 설명서를 보고 옵션을 선택하면 되는데, commit 주석을 바꿀 것이기 때문에 pick을 지우고 reword로 변경하면 된다.
그리고 내용을 변경할 때는 편집 모드(A키)로 되어있어야 한다는 점을 꼭 기억해두자.
이렇게 변경을 완료하고 Esc키를 눌러 편집 모드를 해제하고 :wq!를 입력해서 에디터를 빠져나온다.
그러면 바로 해당 주석을 변경할 수 있는 새 에디터 창이 나온다.
주석 역시 아까와 동일한 방법으로 에디터 편집을 진행하면 된다.
잘 변경 되었다. 그리고 commit id도 바뀐 모습을 확인할 수 있었다.
'Git & Github' 카테고리의 다른 글
[Git] Git remote URL 조회/변경하기 (0) | 2021.08.07 |
---|---|
[Git] git pull 소개와 git clone과의 차이점 (0) | 2021.04.09 |
[Git] 원격 저장소의 이름 / README.md 파일 (0) | 2021.04.08 |
[Git] 브랜치(2) - 충돌(conflict) 처리 (0) | 2021.04.07 |
[Git] 브랜치(1) - 개요 및 기본 사용법 (0) | 2021.04.07 |
댓글