SlideShare a Scribd company logo
1 of 10
https://resfactoring.firebaseapp.com/
INDEX
1. Git이 나오게된 배경
파일이나 폴더를 편집할 때 작업
을하면서 오른쪽 사진처럼 번잡
하게한다.
만약 여러명이 공유한 파일을 편
집한다면 저장할때 동기화문제가
있다.
이와같은 문제를 해결하기위해
git이 탄생.
2. git을 이용한 버전 관리
소스 코드가 변경된 이력을 쉽게 확인 가능
특정 시점에 저장된 버전으로 되돌아 갈 수
있다.
동시저장할때 누군가 편집한 내용과 충돌한
다면, 경고메시지 발생. 내용덮어쓰는 실수
가 없다.
매번 백업용 파일 복사본을 만들 필요가 없
다.
3. Git repository(git 저장소)
비슷한 파일이라도 실제 내용 일부 문구가 서로 다르면 다른 파
일로 인식하기 때문에, 이력 별로 구분되어 저장된다.
Git은 원격 저장소와 로컬 저장소 두 종류의 저장소를 제공한다.
①. 원격 저장소(Remote Repository): 파일이 원격 저장소 전용
서버에서 관리되며 여러 사람이 함께 공유하기 위한 저장소입니
다.
②. 로컬 저장소(Local Repository): 내 PC에 파일이 저장되는 개
인 전용 저장소입니다.
저장소 만드는 법은 새로만들거나, 이미 만들어져 있는 원격 저
장소를 내 로컬로 가져오는 것이다.
구조도
git의 object 종류
※ 공통점
- 객체명은 SHA1로 40자리로 해쉬된다. 따라서 내용이 같으면 객체명이 같다.
- .git/objects에 위치함.
- 내용을 까볼려면 git cat-file –p 객체명 으로 치면된다.
1. blob : git add할때 생성, 파일 내용이 저장
2. tree : git commit할때 생성, 타입, 객체명, 파일명이 기록
3. commit : git commit할 때 생성, tree객체명, 부모commit객체명, author,
committer, message를 기록.
4. tag : git tag할 때 생성되고, commi객체명, tag명, tagger, messge를 기록.
실습해볼 필수명령어
자주쓰는 명령어들
- git init
- git status
- git add
- git commit
- git branch
- git merge
- git reset
초기설정
git config
도움말
git 명령어 --help
실습해볼 필수명령어
자주쓰는 명령어들
- git clone
- git remote
- git push
- git pull
- pull request
- fork
github는 git 저장소를 원격저장할 수 있는 웹사이트, 오픈소스의 보고
스타크래프트로 치면 유즈맵저장소같은 곳
※ 추가적인 특징
1. 기록요구 : Issue(이슈)를 사용해 버그를 기록하거나 개발하
고 싶은 새로운 기능을 구체화할 수 있다.
2. 독립된 히스토리(History)에 대한 협력 : branch와 pull
requests를 이용해 다른 브랜치 또는 기능에 협력할 수 있다.
3. 진행 중인 작업 검토 : pull requests 목록을 통해 현재 무슨
작업이 진행되고 있는지 모두 볼 수 있다. 그리고 특정 pull
request를 클릭하여 최근의 변경 내용과 변경에 관한 모든 논
의 내용을 볼 수 있다.
4. 팀의 작업 진척 상황 확인 : 펄스(pulse)를 훑어보거나
commit histroy를 살펴보면 팀의 작업 진척 상황을 알 수 있다.

More Related Content

What's hot

Hackers 퍼블리시팀 Git
Hackers 퍼블리시팀 GitHackers 퍼블리시팀 Git
Hackers 퍼블리시팀 GitWasabi-Jin
 
[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용Ian Choi
 
Git로 협업하기
Git로 협업하기Git로 협업하기
Git로 협업하기Kim Byoungsu
 
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한NAVER Engineering
 
알아두면 쓸모있는 깃허브 1
알아두면 쓸모있는 깃허브 1알아두면 쓸모있는 깃허브 1
알아두면 쓸모있는 깃허브 1Hansol Kang
 
GitHub로 프로젝트 운영하기
GitHub로 프로젝트 운영하기GitHub로 프로젝트 운영하기
GitHub로 프로젝트 운영하기Lee Geonhee
 
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정NAVER Engineering
 
알아두면 쓸모있는 깃허브 2
알아두면 쓸모있는 깃허브 2알아두면 쓸모있는 깃허브 2
알아두면 쓸모있는 깃허브 2Hansol Kang
 
Git의 개념과 사용
Git의 개념과 사용Git의 개념과 사용
Git의 개념과 사용환민 홍
 

What's hot (9)

Hackers 퍼블리시팀 Git
Hackers 퍼블리시팀 GitHackers 퍼블리시팀 Git
Hackers 퍼블리시팀 Git
 
[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용[201808] GitHub 사용하기 - GIt & 협업 활용
[201808] GitHub 사용하기 - GIt & 협업 활용
 
Git로 협업하기
Git로 협업하기Git로 협업하기
Git로 협업하기
 
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
 
알아두면 쓸모있는 깃허브 1
알아두면 쓸모있는 깃허브 1알아두면 쓸모있는 깃허브 1
알아두면 쓸모있는 깃허브 1
 
GitHub로 프로젝트 운영하기
GitHub로 프로젝트 운영하기GitHub로 프로젝트 운영하기
GitHub로 프로젝트 운영하기
 
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정
네이버 오픈소스 세미나 - 오픈소스 프로젝트 참여하기 NAVER 박은정
 
알아두면 쓸모있는 깃허브 2
알아두면 쓸모있는 깃허브 2알아두면 쓸모있는 깃허브 2
알아두면 쓸모있는 깃허브 2
 
Git의 개념과 사용
Git의 개념과 사용Git의 개념과 사용
Git의 개념과 사용
 

Similar to 리스펙토링 5월 세미나, git과 github

Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+github
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubGit 더하기 GitHub(Git클라이언트 활용) / Getting started with git+github
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubJunyoung Lee
 
[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)Ildoo Kim
 
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기CONNECT FOUNDATION
 
GitHub 활용하기
GitHub 활용하기GitHub 활용하기
GitHub 활용하기DataUs
 
오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습BJ Jang
 
Git server 구축(git olite,gitweb)
Git server 구축(git olite,gitweb)Git server 구축(git olite,gitweb)
Git server 구축(git olite,gitweb)진혁 박
 
제로부터시작하는 Git 두번째 이야기
제로부터시작하는 Git 두번째 이야기제로부터시작하는 Git 두번째 이야기
제로부터시작하는 Git 두번째 이야기Mario Cho
 
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습 [숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습 Soongsil University
 
해커스 가이드 투 깃
해커스 가이드 투 깃해커스 가이드 투 깃
해커스 가이드 투 깃Jongdeok Kim
 
제로부터시작하는Git
제로부터시작하는Git제로부터시작하는Git
제로부터시작하는GitMario Cho
 
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Junyoung Lee
 
오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료BJ Jang
 
Git from google techtalks by Randal
Git from google techtalks by RandalGit from google techtalks by Randal
Git from google techtalks by Randalyagurchoi
 

Similar to 리스펙토링 5월 세미나, git과 github (20)

Git 코드랩 스터디 1
Git 코드랩 스터디 1Git 코드랩 스터디 1
Git 코드랩 스터디 1
 
Git lecture1
Git lecture1Git lecture1
Git lecture1
 
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+github
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubGit 더하기 GitHub(Git클라이언트 활용) / Getting started with git+github
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+github
 
[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)
 
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
 
11. git basic
11. git basic11. git basic
11. git basic
 
GitHub 활용하기
GitHub 활용하기GitHub 활용하기
GitHub 활용하기
 
Git
Git Git
Git
 
오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습
 
Git server 구축(git olite,gitweb)
Git server 구축(git olite,gitweb)Git server 구축(git olite,gitweb)
Git server 구축(git olite,gitweb)
 
Git 강별
Git   강별Git   강별
Git 강별
 
제로부터시작하는 Git 두번째 이야기
제로부터시작하는 Git 두번째 이야기제로부터시작하는 Git 두번째 이야기
제로부터시작하는 Git 두번째 이야기
 
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습 [숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습
[숭실대학교 SODA]깃(git) 명령 및 소스트리(sourceTree) 실습
 
해커스 가이드 투 깃
해커스 가이드 투 깃해커스 가이드 투 깃
해커스 가이드 투 깃
 
Git lecture2
Git lecture2Git lecture2
Git lecture2
 
제로부터시작하는Git
제로부터시작하는Git제로부터시작하는Git
제로부터시작하는Git
 
Git - Level 2
Git - Level 2Git - Level 2
Git - Level 2
 
Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)Git 더하기 GitHub(구름IDE 환경)
Git 더하기 GitHub(구름IDE 환경)
 
오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료
 
Git from google techtalks by Randal
Git from google techtalks by RandalGit from google techtalks by Randal
Git from google techtalks by Randal
 

More from JungHoon Lee

리스펙토링 6월 세미나, AWS로 개인서버 구축하기
리스펙토링 6월 세미나, AWS로 개인서버 구축하기리스펙토링 6월 세미나, AWS로 개인서버 구축하기
리스펙토링 6월 세미나, AWS로 개인서버 구축하기JungHoon Lee
 
삼육대 개발동아리 리스펙토링 OT
삼육대 개발동아리 리스펙토링 OT삼육대 개발동아리 리스펙토링 OT
삼육대 개발동아리 리스펙토링 OTJungHoon Lee
 
Syu 오늘 점심은 뭐먹지? 개요
Syu 오늘 점심은 뭐먹지? 개요Syu 오늘 점심은 뭐먹지? 개요
Syu 오늘 점심은 뭐먹지? 개요JungHoon Lee
 
Syu 동행길 웹개발 개요
Syu 동행길 웹개발 개요Syu 동행길 웹개발 개요
Syu 동행길 웹개발 개요JungHoon Lee
 
와이어샤크 IP패킷의 checksum증명
와이어샤크 IP패킷의 checksum증명와이어샤크 IP패킷의 checksum증명
와이어샤크 IP패킷의 checksum증명JungHoon Lee
 
아두이노 bluetooth
아두이노 bluetooth아두이노 bluetooth
아두이노 bluetoothJungHoon Lee
 
아두이노 Digital/Analog IO
아두이노 Digital/Analog IO아두이노 Digital/Analog IO
아두이노 Digital/Analog IOJungHoon Lee
 
서블릿(servlet)
서블릿(servlet)서블릿(servlet)
서블릿(servlet)JungHoon Lee
 

More from JungHoon Lee (10)

삼육봇 소개
삼육봇 소개삼육봇 소개
삼육봇 소개
 
리스펙토링 6월 세미나, AWS로 개인서버 구축하기
리스펙토링 6월 세미나, AWS로 개인서버 구축하기리스펙토링 6월 세미나, AWS로 개인서버 구축하기
리스펙토링 6월 세미나, AWS로 개인서버 구축하기
 
삼육대 개발동아리 리스펙토링 OT
삼육대 개발동아리 리스펙토링 OT삼육대 개발동아리 리스펙토링 OT
삼육대 개발동아리 리스펙토링 OT
 
Syu 오늘 점심은 뭐먹지? 개요
Syu 오늘 점심은 뭐먹지? 개요Syu 오늘 점심은 뭐먹지? 개요
Syu 오늘 점심은 뭐먹지? 개요
 
Syu 동행길 웹개발 개요
Syu 동행길 웹개발 개요Syu 동행길 웹개발 개요
Syu 동행길 웹개발 개요
 
와이어샤크 IP패킷의 checksum증명
와이어샤크 IP패킷의 checksum증명와이어샤크 IP패킷의 checksum증명
와이어샤크 IP패킷의 checksum증명
 
아두이노 bluetooth
아두이노 bluetooth아두이노 bluetooth
아두이노 bluetooth
 
아두이노 Digital/Analog IO
아두이노 Digital/Analog IO아두이노 Digital/Analog IO
아두이노 Digital/Analog IO
 
서블릿(servlet)
서블릿(servlet)서블릿(servlet)
서블릿(servlet)
 
Annotation
AnnotationAnnotation
Annotation
 

리스펙토링 5월 세미나, git과 github

  • 3. 1. Git이 나오게된 배경 파일이나 폴더를 편집할 때 작업 을하면서 오른쪽 사진처럼 번잡 하게한다. 만약 여러명이 공유한 파일을 편 집한다면 저장할때 동기화문제가 있다. 이와같은 문제를 해결하기위해 git이 탄생.
  • 4. 2. git을 이용한 버전 관리 소스 코드가 변경된 이력을 쉽게 확인 가능 특정 시점에 저장된 버전으로 되돌아 갈 수 있다. 동시저장할때 누군가 편집한 내용과 충돌한 다면, 경고메시지 발생. 내용덮어쓰는 실수 가 없다. 매번 백업용 파일 복사본을 만들 필요가 없 다.
  • 5. 3. Git repository(git 저장소) 비슷한 파일이라도 실제 내용 일부 문구가 서로 다르면 다른 파 일로 인식하기 때문에, 이력 별로 구분되어 저장된다. Git은 원격 저장소와 로컬 저장소 두 종류의 저장소를 제공한다. ①. 원격 저장소(Remote Repository): 파일이 원격 저장소 전용 서버에서 관리되며 여러 사람이 함께 공유하기 위한 저장소입니 다. ②. 로컬 저장소(Local Repository): 내 PC에 파일이 저장되는 개 인 전용 저장소입니다. 저장소 만드는 법은 새로만들거나, 이미 만들어져 있는 원격 저 장소를 내 로컬로 가져오는 것이다.
  • 7. git의 object 종류 ※ 공통점 - 객체명은 SHA1로 40자리로 해쉬된다. 따라서 내용이 같으면 객체명이 같다. - .git/objects에 위치함. - 내용을 까볼려면 git cat-file –p 객체명 으로 치면된다. 1. blob : git add할때 생성, 파일 내용이 저장 2. tree : git commit할때 생성, 타입, 객체명, 파일명이 기록
  • 8. 3. commit : git commit할 때 생성, tree객체명, 부모commit객체명, author, committer, message를 기록. 4. tag : git tag할 때 생성되고, commi객체명, tag명, tagger, messge를 기록.
  • 9. 실습해볼 필수명령어 자주쓰는 명령어들 - git init - git status - git add - git commit - git branch - git merge - git reset 초기설정 git config 도움말 git 명령어 --help
  • 10. 실습해볼 필수명령어 자주쓰는 명령어들 - git clone - git remote - git push - git pull - pull request - fork github는 git 저장소를 원격저장할 수 있는 웹사이트, 오픈소스의 보고 스타크래프트로 치면 유즈맵저장소같은 곳 ※ 추가적인 특징 1. 기록요구 : Issue(이슈)를 사용해 버그를 기록하거나 개발하 고 싶은 새로운 기능을 구체화할 수 있다. 2. 독립된 히스토리(History)에 대한 협력 : branch와 pull requests를 이용해 다른 브랜치 또는 기능에 협력할 수 있다. 3. 진행 중인 작업 검토 : pull requests 목록을 통해 현재 무슨 작업이 진행되고 있는지 모두 볼 수 있다. 그리고 특정 pull request를 클릭하여 최근의 변경 내용과 변경에 관한 모든 논 의 내용을 볼 수 있다. 4. 팀의 작업 진척 상황 확인 : 펄스(pulse)를 훑어보거나 commit histroy를 살펴보면 팀의 작업 진척 상황을 알 수 있다.