tigers.yaml 파일 하나만 타임캡슐에 넣고 상태 확인 ( 파일 하나 담기 )모든 파일 담기 git add .(점)
타임캡슐 묻기 ( Commit )
해당 명령어 터미널에 입력
위에 명령어를 입력하면 해당 화면 처럼 Vi모드로 진입i 입력
입력 시작 후 FIRST COMMIT 입력 ( 통상적으로 프로젝트 첫 버전이 만들어질때 쓰임 )
저장하고 종료해야 되니 ESC로 입력 종료 후 :wq 입력
소스트리와 터미널에서 commit된거 확인
해당 명령어 한 줄로 커밋도 가능
다음 변경사항들을 만들고 타임캡슐에 묻기
해당 변경사항처럼 설정
git status로 확인하면 파일의 추가, 변경, 삭제 내역 확인추가되거나 삭제되면 U, M 처럼 이벤트가 생김
터미널에서 git diff 명령어로 상세하게 확인 가능git diff 명령어로 진입 후 해당 vi 명령어로 컨트롤 가능git add . 명령어로 모든 파일 담기 후 상태 확인해당 명령어로 한번에 커밋 후
git log 확인 해보면 두개의 버전이 생긴거 확인소스트리에서도 2가지 버전 생긴거 확인윈도우 주의
새로 추가된 파일이 없을 경우에는 해당 처럼 add랑 commit을 한번에 할수 있음
Git에서 과거로 돌아가는 두 방식
reset
revert
revert를 사용해서 되돌리기 하는게 좋음
과거로 돌아가기 실습
실습하기 전 .git폴더만 백업 후 실습
reset 사용해서 과거로 돌아가기
해당 명령어 입력 후 돌아갈 시점 확인돌아갈 시점 add team Cheetas 커밋 해시 확인 후 복사 ( 앞에 일부만 복사해도 되고 전체 복사해도 됨 )git reset --hard (돌아갈 커밋 해시) 입력 하면 해당 시점 으로 돌아감소스트리에서 해당 시점에서해당 시점으로 돌아간 모습 확인
FIRST COMMIT 으로 돌아가기
reset 하기 전 시점으로 복원해보기
해당 내용은 사용할일이 없지만 현 커밋상태로 초기화되는 명령어때문에 실습
revert 로 과거의 커밋 되돌리기
실습 시작하기 앞서서 소스트리에서도 커밋해쉬 확인이 가능 함
Add George to Tigers에 내용을 확인해보면 George가 추가 된 모습
git log로 되돌아갈 커밋해쉬 복사git revert (되돌릴 커밋 해시)Revert "되돌아갈 시점" 확인 후 저장 종료 :wq소스트리에서 Revert 생성되고 내용에 George가 지워진채로 커밋된거 확인
Revert를 하고 싶은 시점으로 돌아가면 해당 시점 수정하기 전 시점으로 돌아가는거다
위에 보면 알겠지만 Add George to Tigers에 수정한 시점은 George가 추가 된 모습임
Revert를 하면 George가 삭제되고 커밋
Replace Lions with Leopards의 커밋 되돌려보기
Replace Lions with Leopards revert를 하게되면 leopards.yaml 수정한 내역때문에 충돌 메세지 나옴
여기서 컴퓨터는
hint: "git add/rm <pathspec>", then run ( add를 해주던가 remove를 진행 하고) hint: "git revert --continue". ( 해당 명령어를 입력 해달라고 요청 하고 있음)
지금 실습은 leopards.yaml를 삭제 해야 되기때문에 밑에 처럼 입력
remove 후 continue:wq 저장Revert 된거 확인
reset 사용해서 revert 전으로 되돌아가기
git reset --hard 돌아갈 커밋해쉬 입력revert 전으로 돌아간거 확인
커밋해버리지 않고revert하기
돌아갈 커밋해쉬 복사git revert --no-commit 되돌릴 커밋 해시
git status 확인 해보면 modified가 아직 add만 된 상황 커밋을 다시 해줘야됨
이게 어떤 상황에서 사용되냐면 원하는 다른 작업을 추가한 다음 함께 커밋할때 사용
취소하려면 git reset --hard
원래 상태로 돌아간거 확인
SourceTree로 진행 해보기
변경사항 만들고 커밋하기
실습 사전 셋팅소스트리에서 밑에 있는 스테이지 올리기 ( 스테이지=캡슐 )
왼쪽 상단 커밋 버튼 클릭 후 커밋 메세지 입력 커밋 진행커밋 메세지와 커밋된 내용들 확인git log로 커밋된거 확인 Commit with SourceTree
SourceTree로 revert 해보기
되돌리기 할 커밋 우클릭 후 커밋 되돌리기 클릭되돌아가기 되는거 확인tigers.yaml에서 George가 사라진거 확인
SourceTree로 reset 해보기
되돌리기 할 커밋 우클릭 이 커밋까지 현재 브랜치를 초기화 클릭사용 중인 모드 확인 ( 실습에서는 Hard 선택 )되돌아간 거 확인