program tip

sourcetree를 사용하여 git rebase

radiobox 2021. 1. 8. 08:04
반응형

sourcetree를 사용하여 git rebase


SourceTree GUI를 사용하여 git rebase를 수행하는 방법에 대해 혼란스러워합니다. 두 개의 분기 "마스터"와 "개발"이 있습니다. 보시다시피 두 가지가 갈라졌습니다. 명령 줄을 사용하여 "dev"분기에서 rebase를 수행하고 싶습니다. 다음과 같습니다.

git checkout dev
git rebase master

여기에 이미지 설명 입력

"dev"를 마우스 오른쪽 버튼으로 클릭하고 "Rebase current changes into dev"를 선택합니다. 현재 변경 사항은 "마스터에 대한 새로운 커밋"을 의미한다고 가정합니다. 그러나이 옵션을 선택해도 아무런 효과가없는 것 같습니다. 올바른 단계는 무엇입니까?


그러나이 옵션을 선택해도 아무런 효과가없는 것 같습니다.

예, 현재 변경 사항은 현재 분기 중 하나 인 dev.

dev위에 리 베이스 dev는 작동하지 않음 의미합니다.

git checkout dev
git rebase master

현재 지점은 다음과 같습니다 의미 dev: 위에으로 업데이트 할 master.

따라서 SourceTree에서 마우스 오른쪽 버튼을 클릭하고 master( dev체크 아웃 하는 동안 ) 다음을 선택해야합니다.

Rebase current changes onto master

Howe코멘트에 추가합니다 .

" rebase current changes onto [branch]" 의 현재 이름 이 잘못되었습니다. 개선 논의를SRCTREE-1578 확인하십시오 .

기능 브랜치를 개발 및 실패와 함께 최신 상태로 가져 오려고 시도하는 것이 당혹스러워서 " rebase current changes onto $somebranch" 레이블이 붙은 왼쪽 창 컨텍스트 메뉴 항목이 실제로 그 이름이 제안하는 것과 반대임을
알게되었습니다. 현재 브랜치를 리베이스합니다. $ somebranch 주에;
$somebranch, 다른 방법이 아닌 현재 브랜치로 리 베이스 (또는 리 베이스 )됩니다. (권리?)

onto현재 텍스트 의 전치사 " "는 잘못된 것입니다. 이것은 문장의 목적 ( $somebranch제 예에서)이 변경을받을 것이라는 것을 의미합니다 .
실제로 발생하는 것은 그 반대입니다.
현재 브랜치의 이름이 없으면 혼란이 가중됩니다.

문장 구조를 개선하고 영향을받는 지점의 이름을 포함하는 단어 변경은 명확성을 위해 큰 도움이 될 것입니다.
예를 들면 :

rebase $currentbranch to head of $somebranch
rebase $somebranch onto $currentbranch

참조 URL : https://stackoverflow.com/questions/39928132/git-rebase-using-sourcetree

반응형