Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Git basic2 chaos

925 views

Published on

  • Be the first to comment

Git basic2 chaos

  1. 1. GITFrom Basic to Chaos Yunkyu Choi 2013/Mar/05
  2. 2. ContentsBasic & Chaos
  3. 3. BASIC
  4. 4. GIT Overview• Distributed (각자가 자신의 로컬 저장소를 갖음) – SCM (Software Configuration Management) – or Source Code Management System – or Revision(Version) Control System• Started from 2005• Strong safeguards against corruption• Developed by Linus Torvalds – 리눅스를 개발하며 생긴 공동 개발 문제 해결 노력
  5. 5. 장점• 모든 저장소 정보가 최상위 디렉토리에 폴더 형태로 저장됨. – 저장소의 복사/이동이 자유로움 – 기타 많은 장점 ㅡㅡ
  6. 6. 분산(Distributed) 저장소Centralized Distributed Remote Local Local
  7. 7. Git SnapshotOthers 다른 시스템들은 차이점만 저장 Git 은 각 버전의 모든 정보를 저장함 GIT
  8. 8. First StepWORKING WITH GIT
  9. 9. Install and Setting• Install – http://git-scm.com/book/en/Getting-Started- Installing-Git• Setting – http://git-scm.com/book/en/Getting-Started-First- Time-Git-Setup
  10. 10. GIT ConceptRemote Object Database(원격지의 저장소) Blob: 파일 내용 Tree: 디렉토리 Commit: 커밋 정보 Tag: 추가 정보 Staging Area 다음에 커밋 될 Local 파일들을 추가, 캐쉬 (자신의 PC) 해놓음
  11. 11. 로컬 저장소• 로컬 저장소가 존재 – 네트워크가 연결되지 않아도 버전관리 가능• 로컬에서의 상태 1. 수정됨 : Modified 상태 (working directory) 2. 수정되고 추가됨 : Staged 상태 (staging area) 3. Commit 됨 : Commited 상태 (git directory)
  12. 12. git 따라해 보기 (로컬)• Try GIT – http://www.codeschool.com/courses/try-git• git init : git 저장소(.git 디렉토리)생성• git status : 현재 상태 보기• git add [파일이름] : 해당 파일을 stage area에 추가• git commit –m “커밋 코멘트” : stage area 의 내용을 로컬 저장소에 커밋
  13. 13. GIT Concept (Detailed, Remote포함)
  14. 14. git 따라해 보기(원격지 포함)• git remote add origin [원격지주소] : 원격지에 있는 저장소를 추가 (여기서는 origin이라는 이름으로 원격지 주소를 설정)• git push –u origin master : 현재 로컬저장소 브랜치(master)를 위에서 설정한 origin 의 주소에 밀어 넣음(저장) – u 옵션은 설정을 저장하여 다음에는 git push로 같은 동작이 가능• git pull origin master: 원격지인 origin 으로 부터 변경된 내용을 로컬의 master 브랜치로 가저옴• git diff HEAD : working 디렉토리와 로컬 저장소의 HEAD 위치 (가장 최근 커밋)에서의 차이점 보여줌• git diff --staged : staged 영역과 저장소의 HEAD 위치와의 차이점을 보여줌• git reset [파일이름] : 스테이지 영역에 추가된 사항을 되돌림. 워킹 디렉토리에는 변경이 없음.• git branch [브랜치 이름] : 새로운 로컬 브랜치를 만듬• git checkout [브랜치 이름] : 해당 브랜치로 작업 대상을 변경함• git rm [파일이름] : 해당 파일들을 제거 (워킹디렉토리와 스테이지 영역에서 모두 제거)• git fetch origin : 원격 저장소에서 패치를 가져옴• git merge [ 브랜치 이름] : 현재 브랜치와 명시한 브랜치와 합침• git branch –d [ 브랜치 이름] : 명시한 브랜치를 제거함
  15. 15. Step into ChaosADVANCED
  16. 16. GIT Branching• 인터렉티브 학습툴 – http://pcottle.github.com/learnGitBranching/?de mo• Git 사용 가이드 – http://www.slideshare.net/dhrim/git-12030742• 헷갈리지만 하다보면 뭔가 감이 잡힘
  17. 17. 기타• Git Ref – http://rogerdudler.github.com/git-guide/index.ko.html – http://www.hanb.co.kr/network/view.html?bi_id=1664 – http://devcheatsheet.com/tag/git/?page=1• Git hosting – mac • http://www.makebetterthings.com/git/install-gitlabhq-with- gitolite-on-mac-os-x-server-mountain-lion/ – Window • http://whatwant.tistory.com/411
  18. 18. • Basic => Chaos => Harmonious?

×