Skip to main content
Git Lecture1
Lectured by 37th JIAE KIM
강의계획서
1주차: Git의 기초 배우기
2주자: Git의 응용 배우기
3주차: Git으로 미니 프로젝트 해보기
일 월 화 수 목 금 토
7/1 7/2 7/3 7/4 7/5 7/6
7/7 7/8 7/9 7/10 7/11 7/12 7/13
7/14 7/15 7/16 7/17 7/18 7/19 7/20
7/21 7/22 7/23 7/24 7/25 7/26 7/27
7/28 7/29 7/30 7/31
1주차
2주차
3주차
1주차
Chapter1. Git이란?
Git이란?
Git
소스 코드 관리를 위한
분산 버전 관리 시스템
=
그게무엇인디..?
Git이란?
축제작품_이경호_190630.zip
축제작품_김지애_190630.zip
+ 축제작품_이경호_190630.zip
= 축제작품_최종_190701.zip
축제작품_최종_190701_수정
축제작품_최종_190702_수정 (2)
축제작품_최종_190703_수정 (3)
축제작품_진짜최종_190704_수정 (3)
축제작품_이거진짜최종_190705_수정 (3)
한땀 한땀 다른 부분 찾아서 병합..
수정했더니 에러나서 예전꺼로 돌림
버전 이름이 제각각이라 어떤게 최종본인지 감도 안 잡힘
이경호 김지애
축제
작품
총 용량 = zip파일X9
깨알같은 차이가 있었는데도
zip파일 9개로 용량이 9배가 됨
Git이란?
축제작품_이경호_190630.zip
축제작품_김지애_190630.zip
+ 축제작품_이경호_190630.zip
= 축제작품_최종_190701.zip
축제작품_최종_190701_수정
축제작품_최종_190702_수정 (2)
축제작품_최종_190703_수정 (3)
축제작품_진짜최종_190704_수정 (3)
축제작품_이거진짜최종_190705_수정 (3)
한땀 한땀 다른 부분 찾아서 병합..
수정했더니 에러나서 예전꺼로 돌림
버전 이름이 제각각이라 어떤게 최종본인지 감도 안 잡힘
이경호 김지애
축제
작품
조금 더 쉽게 따로 작업하다가 코드를
합칠 방법이 없나?
작업하다가 예전으로 돌아가고 싶을 때
바로 복구할 수 없나?
버전 관리를 쉽게 할 수 있는 방법이
없나?
총 용량 = zip파일X9
깨알같은 차이가 있었는데도
zip파일 9개로 용량이 9배가 됨
용량을 절약하면서 모든 버전 정보를
가지고 있을 방법은 없나?
Git이란?
Git
소스 코드 관리를 위한
분산 버전 관리 시스템
=
버전관리란?
1. 개별 파일 혹은 프로젝트 전체를 이전 상태로 되돌린다
2. 시간에 따른 변경 사항을 검토한다.
3. 문제가 되는 부분을 누가 마지막으로 수정했는지, 누가 언제 이슈를
만들어냈는지 알 수 있다.
4. 파일을 잃어버리거나 무언가 잘못되어도 대개 쉽게 복구할 수 있다.
5. 변경된 부분만 저장하기 때문에 적은 용량으로 히스토리를 기억할 수 있다.
Git이란?
Git
소스 코드 관리를 위한
분산 버전 관리 시스템
=
https://git-scm.com/book/ko/v1/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-%EB%B2%84%EC%A0%84-
%EA%B4%80%EB%A6%AC%EB%9E%80%3F
로컬 버전 관리 시스템 중앙집중식 버전 관리 시스템
단점: 서버자료가 날아가면 통째로 날아감단점: 여럿이 공유할 때 불편함
Git이란?
Git
소스 코드 관리를 위한
분산 버전 관리 시스템
=
https://git-scm.com/book/ko/v1/%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0-%EB%B2%84%EC%A0%84-
%EA%B4%80%EB%A6%AC%EB%9E%80%3F
분산 버전 관리 시스템
-> 서버자료가 날아가도 각각
분산해서 데이터를 저장하고 있기
때문에 복구하기 쉬움.
백문이불여일견
행
1주차
Chapter2. Git 명령어 - 기초
내 개인 공간에서 Git 사용해보기
git 명령어 – 기초 (실습 목표)
1. 원격 저장소(Github)에 Project 저장소 만들기
2. 내 컴퓨터에 여기서 Git을 쓸거라는 초기화 명령어 내리기
3. Github에 만든 프로젝트 저장소 주소를 로컬 저장소에 알려주기
4. 내가 생성하고 변경한 파일에서 올리길 원하는거 선택하기
5. 선택한 파일을 한 덩어리로 만들어서 로컬 저장소에 올리기
6. 덩어리를 원격 저장소(Github)에 올리기
로컬
저장소
commit
pull
사용자 PC
push
fetch 원격
저장소
add
reset
워크
스페이스
(Stage 영역)
워크
스페이스
(Unstage 영역)
사전준비
1. Git-SCM 설치하기
1. https://git-scm.com/downloads
2. Github 가입하기
1. https://github.com/
3. Visual Studio Code 설치하기
1. https://code.visualstudio.com/
사전준비
1. Git-SCM
Git 분산버전관리 툴
2. Github
Git을 사용하는 프로젝트들의 웹 저장소
3. Visual Studio Code
Souce Code Editor
Github 프로젝트 생성하기
1. 생성해둔 github 계정으로 들어가기
2. Github에 레포지토리 생성하기
https://github.com/
Github 프로젝트 생성하기
3. Github 레포지토리 정보 입력하기
Github 프로젝트 생성하기
3. Github 프로젝트 url 복사해두기
Git 셋팅하기
1. git bash 실행 2. Git 폴더 생성
3. 생성된 git 폴더는 여기 있음!
Git 셋팅하기
6. git폴더에 우리가 만들 프로젝트 폴더 생성하기
$ cd git
4. git bash에서 방금 생성한 git 폴더로 이동하기
5. github 에서 생성해둔 계정 설정하기
$ git config --global user.email [Github Email]
$ mkdir [폴더명]
$ git config --global user.name [Github Name]
7. 경로 이동
$ cd [폴더명]
Git 셋팅하기
$ git init
8. 해당 폴더를 Git 초기화
9. git 초기화가 된 것 확인하기
$ ls -a
10. Github에서 생성했던 주소를 원격 저장소를 등록하기
$ git remote add origin <복사한 URL>
11. 등록된 원격 저장소 확인하기
$ git remote -v
Visual Studio Code 시작하기
1. Visual Studio Code 실행 2. 생성한 프로젝트 폴더 열기
Visual Studio Code 시작하기
3. 생성한 프로젝트 열기
Visual Studio Code 시작하기
4. 생성한 프로젝트 열린 것 확인하기
Visual Studio Code 시작하기
5. 마우스 우클릭으로 README.md 파일 생성하기
Visual Studio Code 시작하기
6. README.md 파일 작성하기
** README.md 파일이란?
** md 파일 형식은 뭐지?
https://gist.github.com/ihoneymon/652be052a0727ad59601
Visual Studio Code 시작하기
6. 작성한 README.md 파일
add하기
7. Staged changes에 있던
README파일이 Staged
changes로 이동
$ git add
Visual Studio Code 시작하기
6. 작성한 README.md 파일 commit 하기
7. Commit message 작성
Visual Studio Code 시작하기
8. 한번 더 README.md파일 수정해보기! (작성후 Ctrl+S)
9. add 한번 더해보고 commit 메시지 한번 더 작성해보기
Visual Studio Code 시작하기
10. 마우스 우클릭하고 terminal 키기
Visual Studio Code 시작하기
10. 지금까지 commit한 내용 확인하기
$ git log
Visual Studio Code 시작하기
10. remote 저장소 경로가 올바르게 되어 있는지 확인하기
11. Commit 내용이 잘 들어가있으면 github에 push하기
$ git remote -v
Visual Studio Code 시작하기
12. 계정 정보 입력하기
Visual Studio Code 시작하기
13. Github에서 Commit 확인하기
Visual Studio Code 시작하기
13. Github에서 Commit 확인하기
git 명령어 - 기초
로컬
저장소
commit
pull
사용자 PC
push
fetch 원격
저장소
add
reset
워크
스페이스
(Stage 영역)
워크
스페이스
(Unstage 영역)
1. 원격 저장소(Github)에 Project 저장소 만들기
2. 내 컴퓨터에 여기서 Git을 쓸거라는 초기화 명령어 내리기
3. Github에 만든 프로젝트 저장소 주소를 로컬 저장소에 알려주기
4. 내가 생성하고 변경한 파일에서 올리길 원하는거 선택하기
5. 선택한 파일을 한 덩어리로 만들어서 로컬 저장소에 올리기
6. 덩어리를 원격 저장소(Github)에 올리기
add
commit
push
init
remote
git 명령어 - 기초
1. git init
원격 저장소를 복제하여 로컬 저장소를 생성
2. git remote add [이름] [저장소 주소]
새로운 원격 저장소를 추가
3. git add
파일을 수정하고, stage영역에 올리는 명령어
4. git commit
Stage 영역에 올라가 있는 파일을 커밋함
5. git push
원격 저장소에 로컬 저장소에 있는 파일을 푸시
git 명령어 - 기초
1. git log
커밋 로그를 볼 수 있는 명령어
2. git status
커밋되지 않은 변경사항을 조회
3. git init
현재 디렉토리에 git 저장소를 생성
4. git diff
스테이징 영역과 현재 작업트리의 차이점을 보여줌
1주차
Chapter3. Git 명령어 - 협업
다른 개발자와 공동작업하기
git 명령어 - 기초
로컬
저장소
commit
pull
사용자 PC
push
fetch 원격
저장소
add
reset
워크
스페이스
(Stage 영역)
워크
스페이스
(Unstage 영역)
1. 원격 저장소(Github)에 Project 저장소 만들기
2. 내 컴퓨터에 여기서 Git을 쓸거라는 초기화 명령어 내리기
3. Github에 만든 프로젝트 저장소 주소를 로컬 저장소에 알려주기
4. 내가 생성하고 변경한 파일에서 올리길 원하는거 선택하기
5. 선택한 파일을 한 덩어리로 만들어서 로컬 저장소에 올리기
6. 덩어리를 원격 저장소(Github)에 올리기
add
commit
push
init
remote
clone
git 명령어 - 협업
로컬
저장소
commit
pull
사용자 PC
push
fetch 원격
저장소
add
reset
워크
스페이스
(Stage 영역)
워크
스페이스
(Unstage 영역)
1. 동료 개발자가 본인 컴퓨터에 저장소를 받는다
2. 동료 개발자가 master 브랜치에서 README 파일을 수정하고
원격 저장소에 넣는다.
3. 동료 개발자가 변경한 내용을 내 로컬 저장소에 반영한다.
git 명령어 - 협업
1. 친구가 만들어둔 프로젝트 내 컴퓨터에 받아오기
git 명령어 - 협업
1. 친구가 만들어둔 프로젝트 내 컴퓨터에 받아오기
2. 받아온 프로젝트 확인하기
$ git clone <원격 브랜치>
$ ls -a
git 명령어 - 협업
3. README.md 파일 수정하기
4. 파일 add 하고 commit하고 push하기
git 명령어 - 협업
4. 친구가 수정한 파일 내용 내 로컬환경에도 반영하기
git 명령어 - 협업
로컬
저장소
commit
pull
사용자 PC
push
fetch 원격
저장소
add
reset
워크
스페이스
(Stage 영역)
워크
스페이스
(Unstage 영역)
1. 동료 개발자가 본인 컴퓨터에 저장소를 받는다
2. 동료 개발자가 master 브랜치에서 README 파일을 수정하고
원격 저장소에 넣는다.
3. 동료 개발자가 변경한 내용을 내 로컬 저장소에 반영한다.
clone
push
pull
THANK YOU
Lectured by 37th JIAE KIM