Git, 버전관리, Server/Client, local/remote

성호창·2021년 6월 28일
post-thumbnail

버전관리와 깃


위 사진은 실제 자료구조 과제 중 정렬 과제에 대한 보고서를 작성하기 위해 팀원들과 자료를 주고받은 사진이다. 위 사진과 같이 같은 파일이라도 조금씩 수정을 하면서 새로운 버전이 나오게 된다. 또한 다른 분야에서도 이런식으로 버전이 여러가지가 나오게 된다.
컴퓨터 개발 분야쪽에서 수천개의 코드 파일들이 하나의 프로젝트로 만들어지고 조금씩 버전이 달라지게 된다. 위의 사진처럼 버전이 달라질 때마다 파일을 따로 생성한다면 너무나도 큰 불편함이 생길 것이다.
따라서 파일은 한개로 유지하고 해당 파일의 특정 버전으로 돌아갈 수 있도록 버전관리를 해주는 것이 훨씬 편하다.
이러한 문제점을 해결하고 소스코드 관리에 특화된 버전관리 프로그램이 바로 이다.

서버와 클라이언트


server : client가 데이터를 요청했을 때 데이터를 제공
client : 데이터를 요청

ex)chrome 브라우저에 naver.com(네이버 주소) 작성 후 enter -> 크롬 브라우저는(client)는 네이버(server)에게 웹 페이지 요구 -> 네이버(server)는 크롬브라우저(client)에게 코드로 작성된 데이터 전달

※ 내 컴퓨터도 서버가 될 수 있나? YES -> 내 컴퓨터 주소를 알려주고 데이터만 전달하면 가능

LOCAL, REMOTE

LOCAL:내가 있는 곳
REMOTE: 내가 아닌 멀리 있는 곳

LOCAL COMPUTER:내가 보고있는 컴퓨터
REMOTE COMPUTER: 내 컴퓨터가 아닌 다른 사람의 컴퓨터

내가 사용하고,보고있는 것이 LOCAL이 되고 그 이외의 것이 REMOTE가 된다.
ex) 내가 어떤 특정 REMOTE COMPUTER에 가서 컴퓨터를 사용한다면 그 컴퓨터가 LOCAL COMPUTER가 된다.

Git, Github

Git : local computer에서 사용되는 버전 관리 프로그램
Github : remote computer에 이 버전들을 저장해놓은 저장소(원격에서 동작하는 소스코드 버전 저장소)

0개의 댓글