깃헙 배우기_third
♣본 포스팅은 PC에 최적화 되어있습니다.♣
되돌리기
보는 것 뿐만 아니라 과거의 특정한 상태의 코드로 돌아갈 수 도 있어야한다.
이번엔 버전관리시스템을 이용해서 과거의 코드로 돌아 가는 방법을 알아본다.
WorkingCopy Index Repository
- 최초로 Commit을 하기 전 까지는 추가된 파일은 버전관리를 신경쓰지 않는 파일이다.
- 저장소에 있는 index.html의 변화만을 하나의 버전으로 만들려면 어떻게 해야할까?
- 만약 저번에 만든 저장소에 README.md 파일을 추가하고 그 내용을 "나는 빡빡이다"라고 적는다면 소스트리에 README.md 파일이 추가될 것이다. 하지만 README.md파일의 앞에는 ? 가 붙은 원이 있을 것이다.
- 이것은 최초로 Commit을 하지 않아서 이다. README.md파일을 커밋 한다면 다시 동그라미 않에 점이 3개있는 모양(modefied)으로 바뀔 것 이다.
- index.html파일만 체크해서 버전으로 저장하면 된다. 체크하는 행위를 "add"라고한다.
- 방금의 예제로 인해 하단의 공간과 상단의 공간의 차이점을 알 수 있다.
- 하단은 수정 된 파일들의 목록이 표시되는 공간이다. Git에서는 "working copy"라고 부른다.
- 상단은 Commit 버튼을 클릭 했을때 하나의 버전에 포함될 내용들이 표시되는 공간이다. Git에서는 "index" , 'staging area'라고 부른다.
되돌리기 기능
만약 index.html파일을 수정했다.
하지만 다시 파일을 되돌리고 싶다.
어떻게 해야할까?
- 소스트리의 index.html파일을 클릭하면 우측에 작성한 코드들이 뜬다.
- 이때 붉은색으로 표기되고 -가 붙어있는 라인들이 수정한 내용이 원래 파일에서 삭재되었다는 뜻이다.
- 이럴때 사용하는 것이 "Discard"버튼이다.
- Discard버튼을 클릭하면 현재 수정한 파일의 리스트가 나온다.
- Discard Changes를 누르면 '되돌리기'가 실행된다.
- 꼭 Commit하기전에 작성했던 코드들을 비교해보는 습관을 들이자.
Reset
이미 commit한 버전을 취소하는 방법
만약 body태그를 추가했던 상태로 돌아가고 싶다면 어떻게 해야할까?
- 1. 돌아가고 싶은 버전을 클릭.
- 2. Reset Current Vranch를 선택
- 3. Using mode하고 hard로 설정한 후 OK를 누른다.
- 4. body태그를 한 이후의 모든 commit 파일들이 삭제되고 body태그를 추가했던 상태로 돌아간다.
- 이 기능은 조심해서 사용해야 하는 기능이다. 모든 데이터가 날아갈 수 있기 때문이다.
Revert
예전 버전으로 돌아가는 Reset을 제외하고 다른 방법.
'Revert'는 실행했던 버전을 유지시키면서 수정사항으로 돌아 갈 수 있다.
- 1. 원하는 버전을 우클릭한 후 "Reverse commit.."을 클릭.
- 2. Revert한 버전이 새로 생긴다.
- 하지만 Revert를 사용할 때 만약 화면에 보이는 여러 버전들 중 아래쪽에 위치한 버전을 되돌리고 싶다면,
- 그 위에 존재하는 여러 버전들을 전부 Revert해야한다.