amend는 사전적 의미로 수정하다 라는 뜻이다. 수정한 커밋 ? 그게 뭔데~~
amend commit
커밋을 한 후 엄청 작은 수정 사항을 발견했다.. 다시 커밋하기에는 조금 민망할 때가 있다. 약간의 프로페셔널 함을 보여주고 싶은데 이런 자잘한 오류 때문에 내 이미지가 멋이 없어진다... .
그래서 나온 게 amend commit 이다.
amend 를 이용하여 commit 마무리 하기 전의 시간으로 거슬러 올라가서 수정하는 것과 같다.
여기서 중요한 건 commit 한 상태만 적용 된다는 것이다.
보통 IDE 도구 들에 깃 커밋을 위한 공간에 이렇게 Amend 와 시계표시가 함께 있다.
git에서 사용하기
amend 는 마지막 커밋에 추가할 사항이 있는 경우 (메시지든, 코드이든, 파일이든) 마지막 커밋에 덮어씌우는 옵션이다.
만약에 last commit 이라는 마지막 커밋을 하고 그 뒤에 파일을 업로드 하고 싶다면,
git에 원하는 파일을 추가하고 -> --amend 옵션을 넣어 커밋한다.
$ git add Custom.dart
$ git commit --amend -m “last commit and Custom.dart”
이렇게 되면 git log 에 아래와 같이 나타날 것이다.
commit [새로운 커밋 해시]
Author: [커밋한 사용자의 이름과 이메일]
Date: [커밋 날짜와 시간]
last commit and Custom.dart
주의
여기서 중요한 점은 --amend 옵션을 사용하면 새로운 커밋 해시가 생성되며, 이는 기존 커밋을 대체한다는 것을 의미한다.
즉, 이전 커밋이 마치 존재하지 않았던 것처럼 보이게 한다는 것이다. 만약 이 커밋이 리모트 저장소에 이미 푸시되었다면, 수정된 커밋을 다시 푸시할 때 --force 옵션을 사용하여 강제로 푸시해야 할 수 도 있다. 그러면 협업하는 환경에서는 주의 하여 사용해야 한다.
'git' 카테고리의 다른 글
error: failed to push some refs to (0) | 2024.06.27 |
---|---|
Git Untracked Files Prevent Merge 오류 해결 (1) | 2024.05.31 |
github default 브랜치명을 master 에서 main 으로 변경하기 (0) | 2024.02.15 |
형상관리의 시작 Git 용어 정리_01 (0) | 2023.10.29 |
github와 leetcode 연동을 이용한 알고리즘 포트폴리오 만들기 (0) | 2023.09.03 |