SlideShare a Scribd company logo
1 of 48
Hack Your Git Education
이보라
서강대학교 게임&평생 교육원
CONTENTS
소스 코드 변경 이력 관리에 사용되는 사실상의 표준(de facto standard)
개발자 직군 지원자가 최소한 알고 왔으면 하는 기술
IT 채용 및 교육 회사 프로그래머스의 채용담당자 대상 설문조사(2021)
교육 필요성이 대두되면서 MIT 등의 대학을 필두로 교육 시작
https://missing.csail.mit.edu/
SW 중심대학사업단을 중심으로 정규 과정, 비정규 과정 등을 편성하여 교육
https://www.swuniv.kr/
SW 중심대학사업단을 중심으로 정규 과정, 비정규 과정 등을 편성하여 교육
오픈소스 소프트웨어 통합지원센터 등에서도 교육 지원
https://www.oss.kr/
오픈소스 소프트웨어 통합지원센터 등에서도 교육 지원
오픈소스 소프트웨어 통합지원센터 등에서도 교육 지원
https://www.youtube.com/@OpenUP_OSS
Git은 리눅스 생태계에서 파생된 기술
기본적인 리눅스 명령어를 알아야 Git을 능숙하게 다룰 수 있음
기초가 없는 상태에서 GUI 툴에 의존해 버전 관리를 시도함
config, init, clone 등의 자주 접하게 되는 단어의 뜻을 모름
GitHub 제공 git cheat sheet
commit, checkout등의 자주 접하게 되는 단어엔 ‘다양한 뜻’이 있음
Git 그래프를 이해하려면 비순환 방향 그래프(Directed Acyclic Graph)를 알아야 함
브랜치를 이해하려면 포인터 개념을 알아야 함
Git만이 가진 핵심 특징이 무엇인지 이해하지 못하고 학습 진행
Distributed Version Control System(분산 버전 관리 시스템)
• Git을 학습하기전, 필요한 지식을 사전 교육
기초 리눅스 커맨드 라인, Vim 에디터 Git GitHub
• 교육 초, 중반엔 명령어 위주로 수업
• 교육 후반, 명령어가 익숙해진 이후에 GUI 툴 도입
• Gitk
• Source Tree
• GitKraken
• IntelliJ 내장 툴
• IT 분야는 영어 기반의 전문어가 많음
• 세부 분야 상관없이 공통적으로 쓰는 용어가 많기 때문에 영한 사전, IT 용어 사전
을 적극 활용
• Initialize, configuration
• clone, commit, rebase
• 예시1: checkout
• 뜻: 확인 · 조사하다 / 살펴보다
• 실습
• 브랜치가 아닌 commit을 체크아웃 하면서 해당 커밋을 조사해 보기
- git checkout 커밋id
• 실습
• 브랜치가 아닌 commit을 체크아웃 하면서 해당 커밋을 조사해 봄
• 예시2: rebase
• 뜻: 새로운 (평가, 산정) 기준을 설정하다.
• 예시: rebase
• 예시: rebase
• $ git rebase develop
• 입력한 명령어에 따라 graph가 어떻게 변화하는지 실시간으로 보여주
는
시각화 툴 활용
• Visualizing git
• 비순환 방향 그래프
• 브랜치와 포인터
• Detached Head
• 브랜치와 포인터
• Detached Head
• Git은 분산 버전 관리 시스템이라는 특징이 있음
• git clone  clone은 ‘복제’
• Git은 분산 버전 관리 시스템이라는 특징이 있음
• git clone  clone은 ‘복제’
• Remote 저장소에 변경 일으킨 후, local 저장소에 반영
• Local 저장소에 변경 일으킨 후, Remote 저장소에 반영
• Remote 저장소에 변경 일으킨 후, local 저장소에 반영
• Remote 저장소에서 브랜치 생성, git fetch 명령어 사용해 local 저장소에 반영
• Local 저장소에 변경 일으킨 후, Remote 저장소에 반영
• Local 저장소에서 브랜치 생성, git push 명령어 사용해 remote 저장소에 반영
- git push origin 브랜치명
- git push --set-upstream origin 브랜치명
- git push
https://git-school.github.io/visualizing-git/
Visualizing Git 사이트
https://learngitbranching.js.org/?locale=ko
Learn Git Branching 사이트
https://violet-bora-lee.github.io/git-tutorial/
Git 튜토리얼
https://www.youtube.com/@OpenUP_OSS
Open Up 유투브 내 기본 교육(재생목록)
• Open Up 주관 대회
• OSSCA – 오픈소스 컨트리뷰션 아카데미
• Open Up 주관 대회
• 공개 SW 개발자 대회
• 멘토링 지원 받을 수 있음
• 핵토버페스트
• 전세계 개발자 행사
• 한국에서 비공식 조직이 행사 운영
https://event-us.kr/hacktoberfestkorea/event/23432
감사합니다
Hack Your Git Education

More Related Content

Similar to EOST2023-이보라-HackYourGitEducation.pptx

[D2 fest 2014]yobi hands on lab
[D2 fest 2014]yobi hands on lab[D2 fest 2014]yobi hands on lab
[D2 fest 2014]yobi hands on lab
NAVER D2
 
Configuration management best practices
Configuration management best practicesConfiguration management best practices
Configuration management best practices
Hyunil Shin
 

Similar to EOST2023-이보라-HackYourGitEducation.pptx (20)

지속적인 통합
지속적인 통합지속적인 통합
지속적인 통합
 
2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptx2022.08 멘토링 자료.pptx
2022.08 멘토링 자료.pptx
 
오픈 소스 컨트리뷰션 가이드
오픈 소스 컨트리뷰션 가이드오픈 소스 컨트리뷰션 가이드
오픈 소스 컨트리뷰션 가이드
 
Yobi-hands-on-lab-at-d2fest
Yobi-hands-on-lab-at-d2festYobi-hands-on-lab-at-d2fest
Yobi-hands-on-lab-at-d2fest
 
[D2 fest 2014]yobi hands on lab
[D2 fest 2014]yobi hands on lab[D2 fest 2014]yobi hands on lab
[D2 fest 2014]yobi hands on lab
 
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - TwoseedGit의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
 
Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅
Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅
Atlassian 및 오픈소스를 이용한 DevOps 구축 - 한국정보컨설팅
 
About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)
 
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
네이버 오픈소스 세미나 - 나의코드에서 모두의 코드로 UNIST 이한
 
[Atlassian in 부산]Git을 이용한 형상관리 전략_투씨드
[Atlassian in 부산]Git을 이용한 형상관리 전략_투씨드[Atlassian in 부산]Git을 이용한 형상관리 전략_투씨드
[Atlassian in 부산]Git을 이용한 형상관리 전략_투씨드
 
쌍용강북교육센터 수강생을 위한 Github
쌍용강북교육센터 수강생을 위한 Github쌍용강북교육센터 수강생을 위한 Github
쌍용강북교육센터 수강생을 위한 Github
 
깃헙 활용
깃헙 활용깃헙 활용
깃헙 활용
 
Configuration management best practices
Configuration management best practicesConfiguration management best practices
Configuration management best practices
 
오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습오픈소스 개발을 위한 Git 사용법 실습
오픈소스 개발을 위한 Git 사용법 실습
 
designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...designing, implementing and delivering microservices with event storming, spr...
designing, implementing and delivering microservices with event storming, spr...
 
Meetup tools for-cloud_native_apps_meetup20180510-vs
Meetup tools for-cloud_native_apps_meetup20180510-vsMeetup tools for-cloud_native_apps_meetup20180510-vs
Meetup tools for-cloud_native_apps_meetup20180510-vs
 
성장하는 스타트업의 프로세스 개척기
성장하는 스타트업의 프로세스 개척기성장하는 스타트업의 프로세스 개척기
성장하는 스타트업의 프로세스 개척기
 
Travis-ci를 이용한 CI/CD와 도커를 이용한 Jenkins for Android 구성하기
Travis-ci를 이용한 CI/CD와 도커를 이용한 Jenkins for Android 구성하기Travis-ci를 이용한 CI/CD와 도커를 이용한 Jenkins for Android 구성하기
Travis-ci를 이용한 CI/CD와 도커를 이용한 Jenkins for Android 구성하기
 
Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화
Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화
Github + Heroku + Circle CI 를 이용한 Django Application 배포 자동화
 
프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들프로젝트 관리 및 지켜야 할 사항들
프로젝트 관리 및 지켜야 할 사항들
 

EOST2023-이보라-HackYourGitEducation.pptx