2011-04-19 3 views
0

ROR 응용 프로그램에 spork을 설치하려고했습니다. Git을 사용하여 spork라는 브랜치를 만들고 몇 개의 파일을 수정했다. 몇 시간 동안 작동하도록 spork를 시도한 후에, 나는 그것을 포기하고 단지 이전의 상태로 돌아가고 싶습니다. 나는 master 브랜치를 체크 아웃 한 다음 spork 브랜치를 삭제했다.Git Master Branch - Deleted 지점에서 어떻게 chnages를 실행 취소합니까?

나는 이것이 새답스와 같은 질문이지만 나는 그 답을 찾을 수 없다는 것을 알고있다. 모든 파일을 주인의 이전 상태로 다시 되돌리기위한 마지막 단계는 무엇입니까?

-TIA

+0

죄송합니다. 더 열심히 볼 필사적이어야했습니다. git reset --hard HEAD – user678604

답변

0

않으 셨습니다 spork 통합을 실험에 대한 분기를 생성하여 옳은 일; 그러나 당신이 spork를 포기하기로 결정했을 때 가장 좋은 방법은 spork 분기에서 변경을 커밋하거나 master 분기를 확인하고 spork 분기를 삭제하기 전에 변경 사항을 무시하는 것입니다.

작업 브랜치에서 변경 사항을 unstaged하고 다른 브랜치를 체크 아웃하면 실제로 다른 브랜치에도 변경 사항이 표시됩니다. 첫 번째 브랜치에서 git status을 수행 한 다음 다른 브랜치를 체크 아웃하고 git status을 수행하면이를 볼 수 있습니다. 이것에 대해서 생각해 보면 이해할 수 있습니다. - 무단 변경은 git에 의해 추적되지 않으므로 분기를 전환 할 때 자동으로 "숨겨 둘 수 없습니다". 이것은 git으로 시작할 때 사람들을 (나를 포함하여) 던져 버리는 약간 혼란 스럽거나 성가신 행동 중 하나입니다.

변경 사항을 적용하려면 보통 git add, git commit 흐름을 수행하십시오. 지점의 근무 변경을 취소하려면 git checkout -- <files>을 수행하면됩니다. 또한 git reset --hard HEAD을 수행하여 분기에서 변경 한 사항을 없애고 최신 커밋으로 재설정 할 수 있습니다.

+0

힘내에서 무슨 일이 일어나고 있는지 좀 더 자세히 설명해 주셔서 감사합니다. 그것은 내가 생각했던 것보다 git와 rspec에서 핸들을 얻는데 더 오래 걸린다. – user678604

관련 문제