Skip to main content
Amend 로 마지막 커밋에 변경이나 메시지를 고쳐 넣고, Squash 로 연속된 커밋을 하나로 합칩니다.

Amend: 마지막 커밋 수정

새 커밋을 만들지 않고 HEAD 커밋에 변경을 흡수하거나 메시지를 바꿉니다.
1

Amend 모드 켜기

워킹 카피 패널의 마지막 커밋 수정 (Amend) 체크박스를 켭니다. 그래프에서 HEAD 커밋을 우클릭해 커밋 수정 (Amend) 을 골라도 됩니다.
2

포함할 파일 조정

스테이지됨 섹션에 대상 커밋(HEAD)의 파일이 나타납니다. 스테이지 해제하면 amend에서 빠지고, 새 변경을 스테이지하면 더해집니다. 요약과 설명에는 기존 메시지가 미리 채워집니다.
3

Amend 클릭

커밋 버튼이 수정 (Amend) 으로 바뀝니다. 새로 스테이지한 변경이 없어도 메시지만 고쳐 실행할 수 있습니다.
Amend 모드로 전환된 워킹 카피 패널. Amend last commit 체크박스가 켜져 있고 요약란에는 기존 커밋 메시지 Merge feature/statement-search가 미리 채워졌으며, 오른쪽 버튼 라벨이 Amend로 바뀌었다
Amend 모드를 다시 끄면 제외했던 파일의 인덱스가 HEAD 기준으로 복원되고, 켜기 전에 쓰던 커밋 초안이 되살아납니다. amend 중에 새로 스테이지한 변경은 스테이지된 상태로 남습니다.
첫 커밋 전이거나 병합·rebase·cherry-pick·revert가 진행 중이면 Amend 체크박스가 비활성화됩니다.

Squash: 여러 커밋 합치기

HEAD(브랜치 끝)를 포함하는 연속 구간만 합칠 수 있습니다.
1

커밋 여러 개 선택

그래프에서 합칠 커밋들을 선택합니다.
2

스쿼시 메뉴 열기

선택 집합 안의 커밋을 우클릭해 맨 위의 N개 커밋 스쿼시 를 고릅니다.
3

합친 메시지 작성

제목(Title) 에는 가장 오래된 커밋의 요약이, 설명(Description) 에는 나머지 커밋의 요약이 오래된 순서대로 채워집니다. 정리한 뒤 스쿼시(Squash) 를 누릅니다.
Squash 2 commits 다이얼로그. 위쪽에 합쳐질 커밋 두 개가 짧은 해시와 제목으로 읽기 전용 목록에 나열되고, 아래 TITLE·DESCRIPTION 입력란에 두 커밋 메시지가 미리 채워져 있으며 하단에 Cancel과 Squash 버튼이 있다
아래를 모두 만족해야 합니다.
  • 커밋이 2개 이상 선택됨
  • 선택 집합에 HEAD가 포함됨
  • HEAD에서 부모를 따라 내려간 연속된 선형 체인임
  • 병합 커밋이 없음
  • 가장 오래된 커밋이 루트 커밋이 아님
추적 중인 파일에 커밋되지 않은 변경이 있으면 스쿼시가 거부됩니다. 합쳐진 커밋의 작성자·날짜는 현재 사용자와 지금 시각으로 바뀝니다.

이미 push한 커밋을 고칠 때

Amend와 Squash는 로컬 히스토리를 다시 씁니다. 이미 push한 커밋이 대상에 있으면 로컬과 원격이 갈라지고 다음 push에서 force push가 필요합니다.
ParalleLane은 안내 알림만 보여주고 자동으로 force push하지 않습니다. 공유 브랜치에서는 다른 사람의 작업을 덮어쓸 수 있으니 주의하세요.
Amend와 Squash는 실행 직후 되돌리기(Undo) 대상입니다. soft reset이 적용되므로 커밋에 들어 있던 변경은 스테이지된 상태로 남습니다. 되돌리기 & Undo를 참고하세요.