Upstage AI Lab 4기

8/8~9 학습일지 | Github랑 Git이 다른 거였어?!

Eddie_D 2024. 8. 9. 23:56

컴퓨터 무지랭이는 Git과 Github가 다른 것이라는 걸, 이번 수업을 듣고 깨달았습니당


이번 학습일지는 최주호 강사님의 강의를 듣고 배운 것 중에서 내 머릿 속에 남아 있는 것들(얼마 안되는 것 같은데..)이 더 사라지기 전에 먼저 정리해보려는 것이므로. 그다지 유용한 정보는 없을 것이라는 걸 미리 알려드림


1. Git은 버전을 관리해주는 아주 유용한 도구(?)이다. 

2. Github는 git을 손쉽게 쓸 수 있게 해주는 플랫폼이자, 정답지들이 모여있는 막강한 코드 공유 플랫폼이다. MS는 똑똑했다.

3. 리눅스를 만든 사람 리누스 토르발스는 성격이 더럽다 (?)
이 사람에 대해 궁금해졌다. 

4. 사람들이 함께 일을 하려면 규칙이 필요하다. git이 이렇게까지 유명해지고 널리 사용될 수 있었던 배경에는 아마도 가장 깔끔하게 일할 수 있는 방식이였기 때문이 아닐까. 

5. 버전 관리라는 개념은 나한테도 매우 익숙했다. 책을 만들거나 잡지를 만들 때, 아날로그 방식으로 종이 위에서 버전 관리를 해왔기 때문에. (종이에 프린트를 하고 1교, 2교, 3교라고 직접 쓴다. 종이가 없어지면 끝!) 컴퓨터 프로그램은 도대체 어떻게 버전을 관리하고, 그 수많은 사람들이 프로그램을 함께 개발하기 위해서 어떻게 서로 같은 내용을 보고 있는지를 맞춰주는 건지가 궁금했는데. 이걸 배운 셈. 

6. git의 간단한 원리:
내가 직접 뭔가를 만들고 있는 영역을 작업 영역이라고 하고, 작업 영역을 지정해준다.( git init )
작업 영역 안에서 원하는 걸 만들고 난 뒤에 저장을 하고 싶으면 git add를 해준다. 
add는 임시저장이고, 완전히 저장하고 싶으면 commit을 해서 branch에 저장한다. 저장되는 영역은 헤더 영역.

헤더가 가르키고 있는 영역이 중요하다. 브랜치(가지)가 뻗어나가는 것도 헤더가 어딜 가르키고 있는지에 따라서 달라짐

7. git으로 브랜치를 만들어서 협업할 때. 항상 github에서 동기화를 해줘야 한다. pull을 하고, 내가 수정한 코드를 rebase한 다음에, github에 올려 머지를 할지말지 담당자(팀장)이 결정하게 한다. 

8. 비밀키 공개키는 정말 기발하다. 누가 만든건지 몰라도 천재다.

9. 브랜치 잘 써서 만드는구나. 트리 구조가 여기서도 나오는 게 신기하다. 생명의 나무.

 

하 머리에 뭐가 남은건지 모르겠다ㅋㅋㅋㅋㅋㅋㅋㅋㅋ일단 학습일지 제출하고. git 다시 정리하자.