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.
2014년 12월 29일
경희대학교 컴퓨터공학과
한상윤
Git / GitHub
Mobile Convergence Laboratory
목차
• Git / GitHub 소개
• Git 설치 및 설정
• Git 사용법
• add와 commit
• GitHub(원격저장소) 연결
1 /Mobile Convergence Laboratory
Git이란?
• 프로젝트(소스코드, 리소스 등)를 관리하기 위한
분산 버전 관리 시스템(DVCS)
• 네트워크에 접근하거나 중앙 서버에 의존하지 않
는 완전한 형태의 저장소
• 리누즈 토발즈가 리눅스 커널 개발에 이용하...
Mobile Convergence Laboratory
버전 관리 저장소
Mobile Convergence Laboratory
문서 or 소스코드 등의 수정 내역을 기록
Test 2014.file
Test 2014.file
서로 다른 버전
수정할 때마다 다른 이름의 파일로 저장한다면?
5 /Mobile Convergence Laboratory
source ver 1.0 source ver 1.1 source ver 1.3 source ver ?.?
수정하...
무식한 버전 관리의 폐해
6 /Mobile Convergence Laboratory
Mobile Convergence Laboratory
버전 관리 시스템
버전 관리를 위한 소프트웨어
이력관리를
위한 저장소
Git이란?
• 프로젝트(소스코드, 리소스 등)를 관리하기 위한
분산 버전 관리 시스템(DVCS)
• 네트워크에 접근하거나 중앙 서버에 의존하지 않
는 완전한 형태의 저장소
• 리누즈 토발즈가 리눅스 커널 개발에 이용하...
Git이란?
• 프로젝트(소스코드, 리소스 등)를 관리하기 위한
분산 버전 관리 시스템(DVCS)
• 네트워크에 접근하거나 중앙 서버에 의존하지 않
는 완전한 형태의 저장소
• 리누즈 토발즈가 리눅스 커널 개발에 이용하...
Mobile Convergence Laboratory
분산 버전 관리 시스템
중앙 집중식 버전 관리 시스템 분산 버전 관리 시스템
로컬 저장소를 가지며 이를 가지고 작업 가능
Mobile Convergence Laboratory
분산 버전 관리 시스템
중앙 집중식 버전 관리 시스템 분산 버전 관리 시스템
로컬 저장소를 가지며 이를 가지고 작업 가능
Mobile Convergence Laboratory
Git?
분산 버전 관리 시스템!!
Ok!!
13 /
Github는 뭐지?
GitHub
• git을 호스팅해주는 웹서비스
• Git 저장소 서버를 대신 유지 및 관리해주는 서비스
• 오픈소스 프로젝트 = 무료 / private 프로젝트 = 유료
14 /Mobile Convergence Labo...
Mobile Convergence Laboratory
Git 원격 저장소를 제공
Github의 역할
유사 서비스 :
bitbucket
Git 설치 및 설정
16 /Mobile Convergence Laboratory
Mobile Convergence Laboratory
Windows 설치
Windows 터미널 프로그램
18 /Mobile Convergence Laboratory
Mobile Convergence Laboratory
Linux 설치
1. sudo apt-get install git-core git-doc
2. git --version
3. 설치 완료
Git 사용
1. 저장소 생성
2. 사용자 정보 입력
3. 변경 적용
4. 프로젝트 상태 확인
20 /Mobile Convergence Laboratory
Mobile Convergence Laboratory
저장소 생성하기(명령어 : git init)
1. mkdir git-test
2. cd git-test
3. git init
Mobile Convergence Laboratory
저장소 받아오기(명령어 : git clone)
1. 로컬 저장소에서 받아오기
git clone /로컬/저장소/경로
2. 원격 저장소에서 받아오기
git clone 사...
커미터 등록
• Git을 사용하는 사용자에 대한 정보를 git에 등록한다.
• 공동 작업을 할 때 각각의 버전이 누구의 작업인지 구별해주는
역할
• git config --global user.name “사용자명”
• ...
작업의 흐름
Mobile Convergence Laboratory
작업 공간
(working dir)
로컬 저
장소
(head)
원격 저장소
인덱스
(staging area)
Git GitHub
add commit pu...
인덱스의 중요성!
Mobile Convergence Laboratory
작업공간
add와 commit
git status
git add
git commit
Mobile Convergence Laboratory 26 /
상태보기(명령어 : git status)
27 /Mobile Convergence Laboratory
파일 추가
28 /Mobile Convergence Laboratory
파일 추가 후 상태
29 /Mobile Convergence Laboratory
파일 추가 후 상태
30 /Mobile Convergence Laboratory
인덱스(staging area)에 등록되
지 않아서 버전관리가 되고 있
지 않은 파일들
add : 인덱스에(staging area) 등록
• git add 파일명(ex: git add file.c)
31 /Mobile Convergence Laboratory
작업의 흐름
Mobile Convergence Laboratory
작업 공간
(working dir)
로컬 저
장소
(head)
원격 저장소
인덱스
(staging area)
Git GitHub
add commit pu...
commit : 저장소에 등록
• git commit –m “이번 commit에 대한 설명"
33 /Mobile Convergence Laboratory
commit : 저장소에 등록
• git commit –m “이번 commit에 대한 설명"
34 /Mobile Convergence Laboratory
커밋에 대한 메시지
작업의 흐름
Mobile Convergence Laboratory
작업 공간
(working dir)
로컬 저
장소
(head)
원격 저장소
인덱스
(staging area)
Git GitHub
add commit pu...
파일 수정
36 /Mobile Convergence Laboratory
코드 추가
add 후, status 확인
37 /Mobile Convergence Laboratory
작업 이력 확인(명령어 : git log)
38 /Mobile Convergence Laboratory
작업 이력 확인(명령어 : git log)
39 /Mobile Convergence Laboratory
커밋 리비전
각각의 커밋에 대한 고유 ID
SHA-1 해시값으로 구성
작업 이력 확인(명령어 : git log)
40 /Mobile Convergence Laboratory
커밋 작성자 정보
작업 이력 확인(명령어 : git log)
41 /Mobile Convergence Laboratory
커밋 날짜와 시간
작업 이력 확인(명령어 : git log)
42 /Mobile Convergence Laboratory
커밋에 대한 메시지들
변경 취소(이전 commit 내용 가져오기)
43 /Mobile Convergence Laboratory
작업의 흐름
Mobile Convergence Laboratory
작업 공간
(working dir)
로컬 저
장소
(head)
인덱스
(staging area)
Git
add commit
file.c
printf(“c...
변경 취소(명령어 : git checkout 파일명)
45 /Mobile Convergence Laboratory
checkout 결과
GitHub[원격 저장소] 연결
1. 계정 생성
2. SSH Key 인증
3. Repository 생성
Mobile Convergence Laboratory 46 /
GitHub 계정 생성
47 /Mobile Convergence Laboratory
SSH key 발급
• ssh-keygen –t rsa –C “E-mail”
48 /Mobile Convergence Laboratory
키값이 저장된 곳
SSH key 발급
• Key가 저장된 경로에서 키값 복사
49 /Mobile Convergence Laboratory
SSH keys 등록
50 /Mobile Convergence Laboratory
SSH keys 등록
51 /Mobile Convergence Laboratory
키값 붙여넣기
git_test
SSH keys 등록 완료
52 /Mobile Convergence Laboratory
GitHub repository 생성
53 /Mobile Convergence Laboratory
GitHub repository 생성
54 /Mobile Convergence Laboratory
GitHub repository 생성
55 /Mobile Convergence Laboratory
해당 repository의
이름과 간단한 설명
프로젝트의 라이선스 선택
56 /Mobile Convergence Laboratory
GitHub repository 생성 완료
57 /Mobile Convergence Laboratory
Q&A
58 /
Upcoming SlideShare
Loading in …5
×

Git & Github Seminar-1

1,739 views

Published on

Seminar about git & github

Published in: Software
  • Download or read that Ebooks here ... ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Doc Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • (Unlimited)....ACCESS WEBSITE Over for All Ebooks ................ accessibility Books Library allowing access to top content, including thousands of title from favorite author, plus the ability to read or download a huge selection of books for your pc or smartphone within minutes ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full PDF EBOOK here { http://bit.ly/2m6jJ5M }
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ..............ACCESS that WEBSITE Over for All Ebooks ................ ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full EPUB Ebook here { http://bit.ly/2m6jJ5M } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m77EgH } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m77EgH } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ..................................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookeBOOK Crime, eeBOOK Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Git & Github Seminar-1

  1. 1. 2014년 12월 29일 경희대학교 컴퓨터공학과 한상윤 Git / GitHub Mobile Convergence Laboratory
  2. 2. 목차 • Git / GitHub 소개 • Git 설치 및 설정 • Git 사용법 • add와 commit • GitHub(원격저장소) 연결 1 /Mobile Convergence Laboratory
  3. 3. Git이란? • 프로젝트(소스코드, 리소스 등)를 관리하기 위한 분산 버전 관리 시스템(DVCS) • 네트워크에 접근하거나 중앙 서버에 의존하지 않 는 완전한 형태의 저장소 • 리누즈 토발즈가 리눅스 커널 개발에 이용하려고 최초 개발 및 사용 Mobile Convergence Laboratory
  4. 4. Mobile Convergence Laboratory 버전 관리 저장소
  5. 5. Mobile Convergence Laboratory 문서 or 소스코드 등의 수정 내역을 기록 Test 2014.file Test 2014.file 서로 다른 버전
  6. 6. 수정할 때마다 다른 이름의 파일로 저장한다면? 5 /Mobile Convergence Laboratory source ver 1.0 source ver 1.1 source ver 1.3 source ver ?.? 수정하는 사람이 여러 명이라면?
  7. 7. 무식한 버전 관리의 폐해 6 /Mobile Convergence Laboratory
  8. 8. Mobile Convergence Laboratory 버전 관리 시스템 버전 관리를 위한 소프트웨어 이력관리를 위한 저장소
  9. 9. Git이란? • 프로젝트(소스코드, 리소스 등)를 관리하기 위한 분산 버전 관리 시스템(DVCS) • 네트워크에 접근하거나 중앙 서버에 의존하지 않 는 완전한 형태의 저장소 • 리누즈 토발즈가 리눅스 커널 개발에 이용하려고 최초 개발 및 사용 Mobile Convergence Laboratory 버전 관리 시스템? OK 그럼 분산은?
  10. 10. Git이란? • 프로젝트(소스코드, 리소스 등)를 관리하기 위한 분산 버전 관리 시스템(DVCS) • 네트워크에 접근하거나 중앙 서버에 의존하지 않 는 완전한 형태의 저장소 • 리누즈 토발즈가 리눅스 커널 개발에 이용하려고 최초 개발 및 사용 Mobile Convergence Laboratory 버전 관리 시스템? OK 그럼 분산은?
  11. 11. Mobile Convergence Laboratory 분산 버전 관리 시스템 중앙 집중식 버전 관리 시스템 분산 버전 관리 시스템 로컬 저장소를 가지며 이를 가지고 작업 가능
  12. 12. Mobile Convergence Laboratory 분산 버전 관리 시스템 중앙 집중식 버전 관리 시스템 분산 버전 관리 시스템 로컬 저장소를 가지며 이를 가지고 작업 가능
  13. 13. Mobile Convergence Laboratory Git? 분산 버전 관리 시스템!! Ok!!
  14. 14. 13 / Github는 뭐지?
  15. 15. GitHub • git을 호스팅해주는 웹서비스 • Git 저장소 서버를 대신 유지 및 관리해주는 서비스 • 오픈소스 프로젝트 = 무료 / private 프로젝트 = 유료 14 /Mobile Convergence Laboratory
  16. 16. Mobile Convergence Laboratory Git 원격 저장소를 제공 Github의 역할 유사 서비스 : bitbucket
  17. 17. Git 설치 및 설정 16 /Mobile Convergence Laboratory
  18. 18. Mobile Convergence Laboratory Windows 설치
  19. 19. Windows 터미널 프로그램 18 /Mobile Convergence Laboratory
  20. 20. Mobile Convergence Laboratory Linux 설치 1. sudo apt-get install git-core git-doc 2. git --version 3. 설치 완료
  21. 21. Git 사용 1. 저장소 생성 2. 사용자 정보 입력 3. 변경 적용 4. 프로젝트 상태 확인 20 /Mobile Convergence Laboratory
  22. 22. Mobile Convergence Laboratory 저장소 생성하기(명령어 : git init) 1. mkdir git-test 2. cd git-test 3. git init
  23. 23. Mobile Convergence Laboratory 저장소 받아오기(명령어 : git clone) 1. 로컬 저장소에서 받아오기 git clone /로컬/저장소/경로 2. 원격 저장소에서 받아오기 git clone 사용자명@호스트:/원격/저장소/경로 git clone 저장소 주소(ex: git clone git://github.com/sangyunHan/kairos-xxx)
  24. 24. 커미터 등록 • Git을 사용하는 사용자에 대한 정보를 git에 등록한다. • 공동 작업을 할 때 각각의 버전이 누구의 작업인지 구별해주는 역할 • git config --global user.name “사용자명” • git config --global user.email “사용자 이메일" 23 /Mobile Convergence Laboratory
  25. 25. 작업의 흐름 Mobile Convergence Laboratory 작업 공간 (working dir) 로컬 저 장소 (head) 원격 저장소 인덱스 (staging area) Git GitHub add commit push
  26. 26. 인덱스의 중요성! Mobile Convergence Laboratory 작업공간
  27. 27. add와 commit git status git add git commit Mobile Convergence Laboratory 26 /
  28. 28. 상태보기(명령어 : git status) 27 /Mobile Convergence Laboratory
  29. 29. 파일 추가 28 /Mobile Convergence Laboratory
  30. 30. 파일 추가 후 상태 29 /Mobile Convergence Laboratory
  31. 31. 파일 추가 후 상태 30 /Mobile Convergence Laboratory 인덱스(staging area)에 등록되 지 않아서 버전관리가 되고 있 지 않은 파일들
  32. 32. add : 인덱스에(staging area) 등록 • git add 파일명(ex: git add file.c) 31 /Mobile Convergence Laboratory
  33. 33. 작업의 흐름 Mobile Convergence Laboratory 작업 공간 (working dir) 로컬 저 장소 (head) 원격 저장소 인덱스 (staging area) Git GitHub add commit push file.c
  34. 34. commit : 저장소에 등록 • git commit –m “이번 commit에 대한 설명" 33 /Mobile Convergence Laboratory
  35. 35. commit : 저장소에 등록 • git commit –m “이번 commit에 대한 설명" 34 /Mobile Convergence Laboratory 커밋에 대한 메시지
  36. 36. 작업의 흐름 Mobile Convergence Laboratory 작업 공간 (working dir) 로컬 저 장소 (head) 원격 저장소 인덱스 (staging area) Git GitHub add commit push file.c
  37. 37. 파일 수정 36 /Mobile Convergence Laboratory 코드 추가
  38. 38. add 후, status 확인 37 /Mobile Convergence Laboratory
  39. 39. 작업 이력 확인(명령어 : git log) 38 /Mobile Convergence Laboratory
  40. 40. 작업 이력 확인(명령어 : git log) 39 /Mobile Convergence Laboratory 커밋 리비전 각각의 커밋에 대한 고유 ID SHA-1 해시값으로 구성
  41. 41. 작업 이력 확인(명령어 : git log) 40 /Mobile Convergence Laboratory 커밋 작성자 정보
  42. 42. 작업 이력 확인(명령어 : git log) 41 /Mobile Convergence Laboratory 커밋 날짜와 시간
  43. 43. 작업 이력 확인(명령어 : git log) 42 /Mobile Convergence Laboratory 커밋에 대한 메시지들
  44. 44. 변경 취소(이전 commit 내용 가져오기) 43 /Mobile Convergence Laboratory
  45. 45. 작업의 흐름 Mobile Convergence Laboratory 작업 공간 (working dir) 로컬 저 장소 (head) 인덱스 (staging area) Git add commit file.c printf(“change 1”); file.c printf(“change 1”); printf(“change 2”); printf(“change 3”); printf(“change 4”); checkout
  46. 46. 변경 취소(명령어 : git checkout 파일명) 45 /Mobile Convergence Laboratory checkout 결과
  47. 47. GitHub[원격 저장소] 연결 1. 계정 생성 2. SSH Key 인증 3. Repository 생성 Mobile Convergence Laboratory 46 /
  48. 48. GitHub 계정 생성 47 /Mobile Convergence Laboratory
  49. 49. SSH key 발급 • ssh-keygen –t rsa –C “E-mail” 48 /Mobile Convergence Laboratory 키값이 저장된 곳
  50. 50. SSH key 발급 • Key가 저장된 경로에서 키값 복사 49 /Mobile Convergence Laboratory
  51. 51. SSH keys 등록 50 /Mobile Convergence Laboratory
  52. 52. SSH keys 등록 51 /Mobile Convergence Laboratory 키값 붙여넣기 git_test
  53. 53. SSH keys 등록 완료 52 /Mobile Convergence Laboratory
  54. 54. GitHub repository 생성 53 /Mobile Convergence Laboratory
  55. 55. GitHub repository 생성 54 /Mobile Convergence Laboratory
  56. 56. GitHub repository 생성 55 /Mobile Convergence Laboratory 해당 repository의 이름과 간단한 설명
  57. 57. 프로젝트의 라이선스 선택 56 /Mobile Convergence Laboratory
  58. 58. GitHub repository 생성 완료 57 /Mobile Convergence Laboratory
  59. 59. Q&A 58 /

×