2011-08-25 1 views
14

How to undo a commit and commit the changes into the other branch in Git?을 이해하려고했지만 그렇게 열심히해야한다고 생각하지 않습니다. (답변은 branch -fstash을 사용하고 있습니다. 그게 필요 없다고 생각합니다.)깨끗한 작업 디렉토리로 한 브랜치 (dev)에서 다른 브랜치 (dev)로 1 커밋 복사

dev 브랜치에서 일하고있었습니다. 더러운 작업 영역에서 두 가지 커밋이 있었어. 서로 다른 두 커밋의 모든 변경 내용을 커밋합니다. 마지막 커밋은 WIP (dev 자료)입니다. 마지막 두 번째 작업이 완료되어 stable 분기로 복사해야합니다.

나는

$ git copy e87568fa stable 

같은 것을 상상하지만 그건 그것 확신 해요.

체리 따기에 관련이 있습니까?

확실한 것은 : 커밋을 dev에두고 싶습니다. 따라서 mv이 아니지만, cp입니다.

나는 아직도 모든 GIT 옵션과 명령에 당황하고 있습니다. 안정적인 지점에

답변

21

이동합니다

git checkout stable 

복사 원하는 현재 브랜치에 커밋합니다. 이제 디바이스로 돌아갈 수 있습니다

git cherry-pick e87568fa 

:

git checkout dev 
+0

내가 더러운 작업 디렉토리가 없습니다. 'stash'가 없으면 나는 그것을 정확히했습니다 (http://stackoverflow.com/questions/1334027/git-working-on-multiple-branches/1340143#1340143). 완전한! 감사. 나는이 것을 기억할지도 모르지만 =) 그것을 가장 확실히 다시 사용합니다. – Rudie

+0

나는 위의 단계와 함께 다음 행을 더했다 : '{commit-ID}'를 dev 브랜치로 이동시키기 위해'git cherry-pick {commit-ID}' – AceMark