program tip

Git merge --squash와 --no-commit의 차이점

radiobox 2020. 12. 31. 08:08
반응형

Git merge --squash와 --no-commit의 차이점


제목에서 알 수 있듯이 a git merge --squash와 a 의 차이점에 대해 명확하지 않습니다 git merge --no-commit.

에 대한 도움말 페이지를 이해하는 한 git merge, 두 명령 모두 업데이트 된 작업 트리에 남게되며, 여기서 편집 한 다음 최종 커밋 (또는 여러 커밋)을 수행 할 수 있습니다.

누군가이 두 가지 옵션의 차이점을 명확히 할 수 있습니까? 다른 하나 대신 언제 하나를 사용합니까?


git merge --no-commit

이것은 일반적인 병합과 같지만 병합 커밋을 생성하지 않습니다. 이 커밋은 병합 커밋이됩니다. 히스토리를 보면 커밋이 일반 병합으로 나타납니다.

git merge --squash

이것은 병합 커밋을 생성하지 않고 변경 사항을 작업 트리에 병합합니다. 병합 된 변경 사항을 커밋하면 브랜치에서 새로운 "일반"커밋처럼 보입니다. 기록에 병합 커밋이 없습니다. 병합 된 모든 변경 사항에 대해 체리 픽을 수행 한 것과 거의 같습니다.

참조 URL : https://stackoverflow.com/questions/9599411/differences-between-git-merge-squash-and-no-commit

반응형