[Git] Git과 Github

parkheeddong·2023년 4월 25일
0

Git

목록 보기
1/8
post-thumbnail

1. 깃이란

컴퓨터의 변경 사항을 추적하고, 여러 사용자 간의 해당 파일들의 작업을 조율하기 위한 분산 버전관리 시스템

✔ 소스코드나 파일의 변경이 발생하면, 그 변화를 시간에 따라 기록해서 특정 시점에 다시 꺼낼 수 있도록 하는 시스템이다.

✔ 이 작업을 여러 사용자들이 할 수 있도록, 저장소의 모든 내용을 여러 컴퓨터에 분산해 둔다.

-> 하나의 원격에 저장해 두고, 여러 로컬에서 내용을 가져갈 수 있다.


2. 깃허브란

깃을 사용하는 프로젝트를 지원해주는 웹 호스팅 서버이다.

즉 오픈소스로 자신의 코드를 공유할 때 서버를 무료로 제공해 준다.

유사 서비스로는 bitbucket, gitlab 등이 있다.


3. 깃을 사용하는 이유

버전 관리 기능을 제공하여 원한다면 원하는 시점으로 돌아갈 수 있기 때문에 깃을 사용한다.

✔ 버전 관리란 파일을 시간에 따라 기록하고, 특정 시점을 다시 꺼낼 수 있는 것을 의미한다.

✔ git에서 변경사항을 저장할 때에는 id, 제목, 내용, 작성자, 날짜를 저장하는데, 이를 'commit'이라고 한다.


📌 주의사항

깃은 '매 순간의 파일' 이 아닌, 매 순간의 변경점을 저장한다.

✔ 1시에 파일을 만들고 2시에 변경점을 저장하면, 2시 시점의 변경된 모습의 파일이 존재하는 것이 아니라, 1시로부터 어떠한 내용이 변경되었는지가 저장된다.

즉 매 순간의 변경점에 모든 파일의 내용을 가지고 있지 않기 때문에, ❗ 각 변경점들의 변화를 모두 이어서 봐야 한다.

이렇게 흐름이 이어지는 것을 'git stream'이라고 하며, 해당 순간의 변경점을 찰칵 찍어둔 것을 'snapshot'이라고 한다.

🔔 깃에서는 이렇게 시점마다 보고 있는 머리를 HEAD라고 한다.

0개의 댓글