일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- CSS
- 콜백
- 공식문서
- JavaScript
- 개발
- TypeScript
- 리액트
- 탄스택쿼리
- Tanstack Query
- 타입스크립트
- 개발자
- Tanstack
- react
- 조건문
- 프론트엔드
- JS
- 제로베이스
- 자바스크립트
- 프론트
- 부트캠프
- 코딩
- 인터넷
- HTML
- 개발공부
- components
- props
- 리액트쿼리
- TS
- 프론트엔드 스쿨
- hooks
Archives
- Today
- Total
SUE 개발 블로그
Git & GitHub 깃과 깃허브 본문
git
깃이란 Version Control System ( VCS ) 버전 관리 시스템으로 소스코드를 효과적으로 관리할 수 있는 무료 공개 소프트웨어이다. 깃은 분산형 관리 시스템으로 소스코드를 여러 개발 PC와 저장소에 분산해서 자장하기에 중앙 서버에 장애가 발생해도 로컬 저장소에 커밋할 수 있으며 로컬 저장소들을 이용해 중앙 저장소의 복원도 가능하다. 또 한 사본을 로컬에서 관리하기에 빠르다.
장점
- 소스코드를 주고받을 필요없이 같은 파일을 여러 명이 동시에 병렬 개발이 가능.
- branch ( 독립공간 ) 를 통해 개발 후 본 프로그램에 합치는 방식 ( merge ) 으로 개발 진행이 가능.
- 분산 버전관리라 인터넷이 연결되지 않은 곳도 개발 진행가능.
- 중앙 저장소가 날라가버려도 다시 원상복구할 수 있다.
- 팀이 아닌 개인 프로젝트라도 버전 관리를 하며 체계적으로 개발, 배포하는 과정이 편해진다.
그럼 Version 이란 ?
일상에서 작업 중 이런 것을 많이 봤을텐데, 이런 것을 '버전'이라고 할 수 있다.
무엇이 최종버전이고, 어떤 버전을 찾으려 할 때 고난을 겪을 수 있다. ( 개인이 아닌 협업 상황이라 생각해보자 🙊 )
왼쪽과 오른쪽의 차이를 보자 언제 누가 무엇을 했는지 알 수 있다 ! = 이런 식으로 코드를 관리하는게 바로 git이다.
코드 버전 관리를 하는 이유가 뭔가요 ?
- 수정할 때 마다 파일을 새로 만들면 관리가 힘들어지기 때문에.
- 언제든지 이전 버전의 코드로 돌아갈 수 있기 때문에.
- 이력을 남기기 위해서.
- 하나의 프로젝트를 두고 여러명의 개발자들이 협업할 수 있기 때문에.
다양한 툴이 존재하지만 현재 세계적으로는 git이 가장 많이 사용되고 있다.
Github 은 뭔디 ?
- git을 사용한 프로젝트들의 저장소.
- 개발자들의 Social Network.
git은 프로젝트의 버전관리를 도와주는 시스템이고
GitHub은 Git을 이용해 버전관리를 한 프로젝트들을 관리하게 해주는 호스팅 서비스(사이트)이다.
git의 기본적인 명령어 ( 가장 중요 ) 를 살펴보자.
git 시작 | git init |
git 상태 확인 | git status |
파일 수정 이력 기록 준비 | git add |
파일 수정 이력 기록 | git commit |
파일 업로드 | git push |
commit 이력 보기 | git log |
이제 git이 진행되는 과정을 살펴보자.