Leading engineer
9강 Git과 Github 본문
[ GIT ]
$ 커맨드라인 명령어
* 파일들이 다 담기는 프로젝트 폴더
$ cd (폴더 디렉토리)
* 이 폴더에서 git을 시작하면 이 폴더의 모든 수정내역들이 저장되는 .git(숨김폴더)란 공간이 생긴다.
* 백업
$ git add -A
* $ git commit -m "(작업수행내용)"
이 폴더의 내용들이 박제됨.
그 이후로도 프로젝트에 의미있는 변화가 있을때마다 저장해둔다.
압축파일로 저장할 때처럼, 전체가 따로 복사되는게 아니라 각 버전의 변경사항들만 기록되기 때문에,
박제를 여러번 한다고 용량을 몇 배로 차지하지 않는다.
그러다가 프로젝트를 과거 상태로 되돌려야 하는 상황이 오면
* 박제 내역들을 확인한다
$ git logs
* 박제됐던 과거의 상태로 복원한다
$ git reset --hard 000
* 가지치기, 분기
$ git branch "(브랜치명)"
주가 되는 부분들은 main에서 작업하고, 시도해볼 부분은 다른 브랜치에서 작업
* 메인브랜치에 합치기
$ git merge "(브랜치명)"
[ Git Hub ]
* Git은 버전관리를 위한 "소프트웨어"
* GIthub는 이 Git으로 저장돼서 원격전송된 내역들이 저장되는 공간을 제공하는 "서비스"
내 코드들을 원격으로 백업해두는 곳을 넘어서 전 세계의 무수한 오픈소스 프로젝트들이 공유되고 수많은 자발적 참가자들에 의해 발전하는 곳으로 작용한다.
"오픈소스"란?
: 말 그대로 코드가 다 공개된 소프트웨어 프로젝트이다.
전세계 사람들이 Github에 올려진 프로젝트들을 다 볼 수 있기 때문에 잘못된 기능을 수정하거나, 더 좋은 기능을 구현하는 코드들을 지구 반대편의 뛰어난 프로그래머에게 제안받을 수도 있고, 내가 다른 누군가/회사의 프로젝트에 기여할 수도 있다.
정리:
1. Git 이란?
버전 관리를 위한 소프트웨어
작업물을 버전별로 편리하게 저장해서, 작업상태를 과거로 돌리거나 분기점을 두는 등 코드의 상태를 자유자재로 다룰 수 있게 해준다.
2. Github란?
Git으로 관리되는 작업물들을 클라우드처럼 업로드할 수 있는 서비스들 중 하나
'오픈소스의 성지': 전세계의 프로그래머들이 작성한 코드들을 살펴보고 기여하거나 도움을 받을 수 있는 공간
'Dev > 사전학습' 카테고리의 다른 글
10강 Git - 혼자작업편 (0) | 2023.02.20 |
---|---|
8강 Exception Handling이란? (0) | 2023.01.14 |
7강 Static Web, Dynamic Web이란? (0) | 2023.01.14 |
6강 클라우드 컴퓨팅이란? (1) | 2023.01.14 |
5강 Cookie Session Cache 란 무엇인가? (0) | 2023.01.14 |