* 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 활용
2018년 6월 24일 "백수들의 Conference"에서 발표한 개발자를 위한 (블로그) 글쓰기 intro입니다
좋은 글을 많이 보는 노하우 + 꾸준히 글을 작성하는 노하우에 대해 주로 이야기했습니다! (어떻게 글을 작성하는가는 없어요!)
피드백은 언제나 환영합니다 :)
* 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 활용
2018년 6월 24일 "백수들의 Conference"에서 발표한 개발자를 위한 (블로그) 글쓰기 intro입니다
좋은 글을 많이 보는 노하우 + 꾸준히 글을 작성하는 노하우에 대해 주로 이야기했습니다! (어떻게 글을 작성하는가는 없어요!)
피드백은 언제나 환영합니다 :)
Best practices with git - The essentials you should know about git to use if efficiently
Workshop by Otto Kekäläinen at OpenFest 7.11.2015, Sofia, Bulagaria.
This 68 slides beast surely has something new even for seasoned git developers!
Best practices with git - The essentials you should know about git to use if efficiently
Workshop by Otto Kekäläinen at OpenFest 7.11.2015, Sofia, Bulagaria.
This 68 slides beast surely has something new even for seasoned git developers!
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에서 보이지 않는 관계로 모두 나눔고딕으로 통일했습니다.
[17.02.09] Github introduction (Korean Version)Ildoo Kim
Git 혹은 소스코드 형상관리를 아예 모르는 사람을 대상으로 작성한 Starter Guide입니다. 팀에 새로운 사람이 Join하는 등의 경우에 세미나 자료로 활용합니다.
형상관리/git 개념과 command line 혹은 source tree를 활용한 기본적인 사용 방법에 대해 소개합니다.
<팀을>이라는 책을 많이 참고하였습니다.
11. GIT
중앙집중식의 checkout와는 다른 동작을 보여준다.
풀링은 두 단계를 거친다. 상위저장소의
변경사항을 복사하고, 변경이력을 지역저장소와
병합한다.
*풀
(Pull)
! Fetch
fetch는 pull과는 다르다.
원격저장소의 변경사항과 지역
저장소의 이력과 병합하기 전
까지만 하는 단계를 말한다.
22. 브랜치 사용
실험적인 변경사항
성능이 향상되는지 알아보기 위해 알고리즘을
다시 작성하거나 코드의 일부를 특정 패턴으로
리팩토링 하려 할때 브랜치를 생성하여 작업
23. 브랜치 사용
새로운 기능
새로운 기능을 추가할때마다 브랜치를 생성한다.
작업이 끝나면 브랜치를 합쳐야한다. 이때
브랜치의 전체 변경이력을 가져오거나 이력을
하나의 커밋으로 합칠 수 있다.
24. 브랜치 사용
버그수정
아직 릴리즈 하지 않은 코드의 버그거나 릴리즈
하려고 태그를 붙힌 코드의 버그에 상관없이
버그와 관련된 변경사항을 추적할 수 있도록
브랜치를 생성한다. 새로운 기능을 추가하는
브랜치와 마찬가지로 수정한 부분을 기존의
코드에 반영할 때 매우 유연해진다.
28. 릴리즈 브랜치
• 릴리즈 브랜치는 프로젝트에서 이번 릴리즈에
포함하기로한 기능 구현이 끝나면 생성한다.
• 릴리즈 브랜치에서는 최소한의 변경만 발생하며,
버그나 로직의 수정에만 집중할 뿐 새로운
기능을 추가하지 않는다.
• 일반적으로 릴리즈브랜치에는 RB_라는
접두어를 붙히며, 그뒤에 릴리즈 번호를 붙힌다.
29. 릴리즈 브랜치
• 릴리즈브랜치는 해당 릴리즈가 요구하는 마지막
테스트까지 통과하는 짧은 기간 동안만
존재한다.
• 릴리즈준비가 완료되면, 해당 릴리즈를
표시하는 태그를 붙히고 브랜치를 삭제한다.
• 태그가 해당 위치를 표시하고 있으므로 이력을
유지하기 위해 브랜치를 유지할 필요가 없다.
30. 태그사용
프로젝트가 진행되면 마일스톤을 달성하게된다.
태그를 사용하면 마일스톤을 쉽게 표시할 수 있고
추후 원하는 마일스톤으로 돌아갈 수 있다. 태그는
포인터이며 저장소의 책갈피처럼 동작한다.
98. 참고하면 좋은 사이트
http://wiki.redgolems.com/03.server:git:01.git에_대하여
http://www.slideshare.net/ajaxiankr/
2011-kth-h3-track-b-4-advanced-git-by-aj
http://blog.outsider.ne.kr/572
사용자 프로젝트에 포함된 파일의 변경사항을 추적할 수 있도록 돕는 방법론이나 도구를 말합니다.
중앙집중형 버전관리는원격저장소가 존재하고, 그 저장소만을 활용 한다. 로그를 추적할 수 있꼬 트렁크, 브랜치, 태그등으로 소스를 관리한다.분산버전관리 시스템위와 같은 점에서 기존 버전관리시스템과 차이가 없다. 단, 버전관리 시스템과 분산 버전관리 시스템은 개발자들 간의 변경사항을 반영하고 공유하는 방식이 다르다.
코드의 상태변경이 언제발생했는지, 누가했는지 변경사항을 설명하는 로그메시지와 함께 저장되고 관리되는 공간이다.대표적으로 서브버전의 저장소는 중앙집중식 저장소 모델을 따른다.하나의 중앙저장소가 있고 모두가 이 중앙 저장소에 변경사항을 전송한다. 각 개발자는 저장소의 최신버전을 “복사”해서 가지고 있고이 복사본을 변경한 후에는 변경된 부분을 다시 중앙 저장소에 전송한다. 이러한 중앙저장소는 한계가 있다.변경이력을 보기위해 중앙저장소에 접근해야한다네트워크의 한계가 있다.인터넷에 연결할 수 없다면 git이 따르는 분산버전관리 시스템의 가장 큰 장점중 하나를 부각시킨다.
모든 변경은 작업트리에서 이루어 진다. 작업트리란 저장소를 바라보는 자신의 현재 시점을 말한다. 이 작업트리는 소스코드, 빌드파일, 단위테스트등 프로젝트의 모든 파일을 가지고 있다. 몇몇 버전관리시스템에서는 작업트리를 작업복사본(working copy)라 한다.Git에서 작업트리는 로컬컴퓨터의 프로젝트디렉토리에 있는 .git 디렉토리에 존재한다.이 작업트리로 인해 저장소의 이력, 변경사항등을 원격저장와 통신업이 볼 수 있다.