Upload
seongsik-kim
View
4.656
Download
9
Embed Size (px)
DESCRIPTION
Git 사내 교육 자료
Citation preview
Motivation
● 잦은 주기로 commit을 하고 싶었다.○ commit을 자주 하면, 내 작업들이 적절하게 백업된다: 언제든지 복구
○ 하지만, 다른 사람의 작업물과 충돌이 잦게 된다.○ 그렇다고, 느린 주기로 commit을 한다면, commit단위가 너무 방대해 져서, 관리하기가 힘들다.
○ commit을 안하고 48시간 이상 버티다가 잘못 눌러서
작업 내용 다 날아간 적이 있다.
원격 저장소로부터 자료 받기1
프로젝트 상위 폴더에서 마우스 R버튼Git Clone...
URL: [email protected]:repositories/test001Directory: C:\prj\test001
commit 은 이렇게!
● 작업별로 끊어서 자주 commit 하는게 좋음.○ 클래스 추가, 클래스 리팩토링, 애니메이션 추가, 라이브러리 추가, ...
● 메시지는 의미 있게○ 나중에 기록을 보고 제대로 활용할 수 있게...
● 깔끔하게 commit 하면, 해당 commit만 골라서 merge할 수도 있다. (고급 기능 / cherry-pick)
push
로컬 저장소의 내용을 원격 저장소로 업로드
push를 해야, 원격 저장소(서버)로 작업 내역이 전송됩니다.
commit만 하고 포맷하면, push안한 자료들은 사라집니다.
기억하세요 !
● 최초 프로젝트 시작○ clone (svn:checkout)
● 작업 영역 -> 로컬 저장소○ commit
● 로컬 저장소 -> 원격 저장소○ push (svn:commit)
● 원격 저장소 -> 로컬 저장소 -> 작업 영역○ pull (svn:update)
conflict !!!
● using theirs
● using mine
● 편집 후, resolve 처리○ Beyond Compare 추천
● 그리고 다시 commit ! (충돌 해결 후, 즉시 커밋하세요. 어명이오~.)
조심!
● 빈폴더는 등록되지 않음.○ .empty.txt 파일을 하나 넣어 두면 됨.
● push할 때, 원격 저장소에 다른 사람의 작업내역이 존재하면, pull을 먼저 해야 됨.
● push / pull 직전에 반드시 commit 을 하세요.○ 충돌로부터 자신을 보호할 최고의 수단입니다.
참고 자료
http://git-scm.com/abouthttp://www.slideshare.net/dalinaum/the-githttp://marklodato.github.com/visual-git-guide/index-ko.html