728x90
반응형
질문 : Git을 푸시하기 전에 여러 커밋 결합 [중복]
내 로컬 저장소에 주제별로 유사한 커밋이 많이 있습니다. 원격으로 푸시하기 전에 단일 커밋으로 결합하고 싶습니다. 어떻게하나요? rebase
가 이것을한다고 생각하지만 문서를 이해할 수 없습니다.
답변
당신이하고 싶은 것은 git에서 "squashing"이라고한다. 이 작업을 수행 할 때 많은 옵션이 있지만 (너무 많습니까?) 푸시되지 않은 모든 커밋을 단일 커밋으로 병합하려면 다음과 같이하십시오.
git rebase -i origin/master
그러면 다음과 같은 파일이있는 텍스트 편집기 ( -i
는 "대화 형")가 나타납니다.
pick 16b5fcc Code in, tests not passing pick c964dea Getting closer pick 06cf8ee Something changed pick 396b4a3 Tests pass pick 9be7fdb Better comments pick 7dba9cb All done
첫 번째 것을 제외한 pick
을 squash
(또는 s
)로 변경합니다.
pick 16b5fcc Code in, tests not passing squash c964dea Getting closer squash 06cf8ee Something changed squash 396b4a3 Tests pass squash 9be7fdb Better comments squash 7dba9cb All done
파일을 저장하고 편집기를 종료하십시오. 그런 다음 다른 텍스트 편집기가 열리면 모든 커밋의 커밋 메시지를 하나의 큰 커밋 메시지로 결합 할 수 있습니다.
짜잔! 인터넷 검색 "git squashing"은 사용 가능한 다른 모든 옵션에 대한 설명을 제공합니다.
출처 : https://stackoverflow.com/questions/6934752/combining-multiple-commits-before-pushing-in-git
728x90
반응형
'개발관련 > Git' 카테고리의 다른 글
Git : 프로젝트 커밋 기록에서 삭제 된 파일을 찾는 방법 (0) | 2021.06.08 |
---|---|
잘못된 Git 브랜치에 대한 커밋을 수정하는 방법 (0) | 2021.06.08 |
정수의 자릿수를 얻는 방법? (0) | 2021.06.07 |
Git에서 파일 이름의 대소 문자 변경 (0) | 2021.06.06 |
GitHub에 푸시 할 수 없음-병합이 필요하다고 계속 말합니다. (0) | 2021.06.05 |