* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
Github - Git Training Slides: FoundationsLee Hanxue
Slide deck with detailed step breakdown that explains how git works, together with simple examples that you can try out yourself. Slides originated from http://teach.github.com/articles/course-slides/
Author: https://twitter.com/matthewmccull
* SlideShare에서 특정 폰트로 쓰인 글자가 보이지 않는 경우가 있습니다. 다운로드 하셔서 PDF 리더로 보시는 것을 권해드립니다. -> 기존 폰트를 모두 나눔고딕으로 변경하였습니다.
OSS 포럼 개발 교육으로 진행한 Git, GitHub 강의 자료입니다.
(http://onoffmix.com/event/67081)
간단한 로또 번호 생성기 프로그램을 작성하면서 Git, GitHub에 대해 배웁니다.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
Github - Git Training Slides: FoundationsLee Hanxue
Slide deck with detailed step breakdown that explains how git works, together with simple examples that you can try out yourself. Slides originated from http://teach.github.com/articles/course-slides/
Author: https://twitter.com/matthewmccull
Git is a distributed revision control system that is widely used in the software development industry. The presentation was used in a lecture delivered in BITS-Pilani, India. The lecture served as a basic crash course on Git.
First, it sets off with a guide to install and configure git on various platforms.
Then, the basic working concepts of Git are explained.
This is followed by a detailed step-by-step guided demonstration of a sample workflow in Git.
Afterwards, Some auxillary commands that are frequently used are discussed briefly.
Finally, basic concepts of branching and merging are detailed.
The presentation ends with a few possible merge conflicts that occur in Git.
Introduction to Git & GitHub.
Agenda:
- What’s a Version Control System?
- What the heck is Git?
- Some Git commands
- What’s about GitHub?
- Git in Action!
Git is a distributed revision control system that is widely used in the software development industry. The presentation was used in a lecture delivered in BITS-Pilani, India. The lecture served as a basic crash course on Git.
First, it sets off with a guide to install and configure git on various platforms.
Then, the basic working concepts of Git are explained.
This is followed by a detailed step-by-step guided demonstration of a sample workflow in Git.
Afterwards, Some auxillary commands that are frequently used are discussed briefly.
Finally, basic concepts of branching and merging are detailed.
The presentation ends with a few possible merge conflicts that occur in Git.
Introduction to Git & GitHub.
Agenda:
- What’s a Version Control System?
- What the heck is Git?
- Some Git commands
- What’s about GitHub?
- Git in Action!
Git 더하기 GitHub(Git클라이언트 활용) / Getting started with git+githubJunyoung Lee
OSS 포럼 개발자 교육 'Git/GitHub 입문하기 - 부산'에서 Git 실습에서 사용한 자료입니다. (http://onoffmix.com/event/69536)
지난 번 자료(http://www.slideshare.net/ssusercef361/git-github-62006866)는 구름 IDE를 활용해서 진행했고, 이번 자료는 Git 클라이언트를 설치해서 진행했습니다. GitHub 가입과 Git 클라이언트 설치는 강의 전 준비(http://www.slideshare.net/ssusercef361/github-git)를 참고해주세요.
1. Git과 Github
- 버전 관리?
- Git은 어쩌다 세상에 나왔나?
- Github?
2. Git 시작하기 - 실습
- 실습 준비 : Github, Goorm IDE 가입하기
- 리눅스 명령어와 친해지기
- Git 필수 개념 집고 넘어가기
- Step by Step Git 명령어 실습 (커밋, 브랜치, 원격 저장소 등)
- 옆자리 분과 Fork하고, Pull Request
3. Git과 Github 맛깔나게 활용하기
- Github의 협업 기능 살펴보기
- Github Page
- Gitbook
4. 있어보이는 Git 활용
- .git 디렉토리 살펴보기
- Git Branch 전략
- Commit Message 활용
특정 폰트가 SlideShare.net에서 보이지 않는 관계로 모두 나눔고딕으로 통일했습니다.
16. Git-flow 브랜칭 전략
• Vincent Driessen이 제안
• 목적에 따라 브랜치를 분리하는 모델
• master branch: 배포 버전
• develop branch: 개발 버전
• 배포와 연관 지었을 때 강력한 힘을 발휘
• Git-flow를 설치해서 쓰면, 브랜치 삭제/병합을 쉽게 해 줌
30. 장점
• 가독성 향상
• feature → develop 머지 커밋 == 새로운 기능이 있구나
• 작업 내용은 feature branch로 격리되어 다른 코드와 섞이지 않음
• 효율 향상
• 브랜치의 역할이 정해져 있기 때문에 Hook등을 걸기 쉬움
• hotfix 작업시 실수 방지
35. 장점
• 머지 그래프가 예쁘게 유지
• 작업 도중에 최신 내용을 가져 와 머지하는 순간 무지개에 가까워 짐..
• 충돌 발생시 기능 작업자가 인지, 처리 가능
• 코드 리뷰 향상
• 긴 기능의 작업을 피하게 됨
• 오래 된 기능 브랜치 일수록 충돌 날 확률이 올라감
• 개별 기능은 짧게 쪼개어 작업하는 원칙에도 OK
36. 왓 스튜디오에서는
• Git-flow
• release 브랜치에 Hook을 활용
• 커밋이 올라오면 자동 빌드, 테스트, 배포
• Forward-porting
• 로그 그래프로 작업된 기능을 한 눈에 파악 가능
• 머지 했을 때, 타인의 코드에 트롤링(?)할 여지 방지
83. 다음 상황에 적절
• 작업 디렉토리를 통째로 바꿔야 하는 경우
• 브랜치를 바꿔야 한다거나, 브랜치를 바꿔야 한다거나…
• stash할 순 있는데, untracked 파일도 꽤 있고…
• 현재 작업 상태를 보존하고 싶을 경우
84. 다음 상황에 적절
• 작업 디렉토리를 통째로 바꿔야 하는 경우
• 브랜치를 바꿔야 한다거나, 브랜치를 바꿔야 한다거나…
• stash할 순 있는데, untracked 파일도 꽤 있고…
• 현재 작업 상태를 보존하고 싶을 경우
worktree는 여러 개의 작업 트리를 관리할 수 있게 해 줌
154. $ git grep
• 평소에 많이 쓰는 그 grep과 유사
• blob object 검색이라고 생각하면 쉽다.
• 파일과 위치를 알 수 있음
• $ git grep blahblah
• -- 구분 기호로 경로를 제한할 수 있음
• $ git grep blahblah -- Document
155. $ git grep hello
# -- 구분 기호로 경로를 제한할 수 있음
$ git grep hello -- subdirectory