2017-10-13 10 views
2

여러 커밋 스쿼시, 난 항상 사용했다? 연속적인 커밋을 선택하고 스쿼시 할 수 있다면 멋질 것입니다.Git 확장 프로그램 : Squash 커밋?</p> <pre><code>git reset --soft HEAD~<number of commits to squash> && git commit </code></pre> <p>을하지만 자식 확장 같이 좋은 자식 클라이언트에이 작업을 수행 할 수있는 좋은 방법이 있는지 궁금 :

+0

나는 TortouseGit을 사용하여 매우 편리하다. – Alexan

답변

4

당신은 2 가지 방법으로 GitExtensions 쉽게이를 수 있습니다.

첫 번째은 똑같은 일을하지만, GUI에서 기존의 커밋 메시지를 사용하고 싶지 않을 때 적합합니다. . GitExtensions의 역사 브라우저에서

git reset --soft HEAD~<number of commits to squash> 

은, 바로 당신이 유지하고 '여기에 지점을 다시' 을 선택합니다 마지막 커밋을 클릭합니다. 그런 다음 'soft' 옵션을 선택하십시오.

git commit 

그런 다음 아직 변경된 내용을 커밋하십시오.

는 '--interactive 리베이스'하는 것이다

오른쪽 같은 상술 한 바와 커밋 클릭 '에 리베이스'를 선택. 팝업에서 '대화 형'확인란을 선택하십시오.

그런 다음 편집기에서 커밋 작업을 '스쿼시'로 설정하십시오. 그것을하기 전에 대화 형 rebase에 대한 좋은 문서를 읽으십시오. 이 솔루션은 스쿼시하는 커밋의 커밋 메시지에서 작성한 커밋 메시지를 작성하고자 할 때 적합합니다.

3

예, 나는 TortoiseGit이 그것을 할 수 있다고 생각합니다 (Windows를 사용하는 가정). TortoiseSVN의 이전 사용자 인 나는 그것을 권하고 싶다. 커밋 로그를 볼 때 다음 작업을 수행 할 수 있습니다 : 당신이 TortoiseGit을 사용하여 커밋 할 때

Combine multiple commits context menu

또한이, 당신은 단순히 수정할 수있는 옵션이 표시됩니다 이전이 작업을 수행 할 수 있도록 커밋 네가 간다. 또한이 작업을 수행 할 때 마지막 커밋 메시지가 표시됩니다 (스크린 샷에서 개인 정보 보호를 위해 제 정보를 지 웠습니다).

물론 Amend last commit

, 난 당신이 이미 알고 확신하지만, 결합하거나 이미 원격에 밀려, 또는 다음 푸시가 비참하게 실패 커밋을 수정하려고하지 않습니다.

추가 보너스로 탐색기에서 작업 복사본을 탐색 할 때 오버레이 아이콘의 이점을 얻을 수 있습니다.

Explorer icons

5

쉽게 GE에서 작업을 수행 할 수 있습니다 방법 스쿼시하기에

  1. 혼합 리셋는

을 할 필요 파일을 당신이

  • 단계로 납작하게 할 커밋 커밋 : enter image description here