2010-01-18 6 views
20

현재 예상보다 커지는 기능으로 작업하기 때문에 가장 적합한 분기를 생성하는 것이 가장 좋습니다. 그래서 현재 작업 디렉토리에서 새로운 브랜치를 생성하고 master 브랜치를 현재 HEAD로 재설정하여 프로덕션 환경에 대한 일부 수정을 수행해야합니다.현재 작동중인 트리에서 분기를 만들고 HEAD로 재설정

어쨌든 이것은 쉬운 일처럼 들리지만 아직 이해할 수는 없습니다. 내 수면 부족 때문일 수 있습니다.

답변

20

그래서, 작업 지점 작성 :

git add <files> 
git commit -m "message" 

또는

git stash 

마스터로 다시 이동하여 변경 사항 커밋 또는 은닉하거나

git checkout -b working_branch 

git checkout master 
git reset HEAD 
+2

'checkout '직후에'git reset HEAD'를 할 필요가 없습니다. 인덱스에 변경 사항이없는 경우, 분기 체크 아웃은 체크 아웃 된 분기로 인덱스를 업데이트합니다. –

+0

그건 약간의 잔인한 행동입니다. 새로운 지사에 맡기고 있다고 가정하면 작업 트리는 깨끗해야합니다. –

+0

'git checkout -b working_branch' 커밋되지 않은/변경되지 않은 변경 사항이 있으면이 작업이 실패합니다. – user1712447

13

아직 커밋을하지 않은 경우 마스터를 이동할 필요가 없습니다. 현재는 현재 HEAD입니다. checkout -b으로 새 지점을 체크 아웃 할 수 있습니다. 작업 트리를 정리할 필요가 없습니다.

예.

git checkout -b newtopic 

당신은 newtopic에 지금 여기 당신의 작업 트리의 변경 사항을 적용 할 수 있습니다. master은 이동할 필요가 없습니다.

관련 문제