
Git : 코드 버전 관리 프로그램
발표 자료를 준비하다 보면 발표자료1 , 발표자료_2 , 발표자료최종
이렇게 여러 파일을 만들게 됩니다.
만약 하나의 발표자료 파일로 변경 또 저장 변경 또 저장했다면 어떤 것이 수정이 되었는지 알 수 없겠죠?
무엇이 변했는지 알고 싶거나, 혹은 이전 버전으로 돌아가고싶을 때는?
이때 버전관리를 하는 것입니다.
👌 정리하기
git : 버전관리 + 동시 협업
git으로 관리하는 프로젝트를 올려 둘 수 있는 사이트. 원격저장소를 제공합니다~
git : 버전관리를 하는 프로그램! 버전 관리를 할 때 사용하는 소프트웨어 자체github : Git으로 관리하는 프로젝트의 복사본을 저장하는 서버를 제공해주고 협업을 위한 편의 기능을 제공해주는 서비스git으로 프로젝트 버전을 관리하기 시작하면
원하는 시점마다 그 디렉토리안에 무엇이 있고 어떤 것이 변해가는지 알 수 있습니다.
이런 것들을 기록하는 곳을 레포지토리 라고 합니다.
초창기 모습부터 최근모습까지 모든 것이 담겨있겠죠,
프로젝트 디렉토리 안에 .git 디렉토리(숨겨진 디렉토리)가 생기는데 이것이 레포지토리입니다.
.git 디렉토리 (숨겨진 디렉토리))프로젝트 디렉토리의 모습을 남기는 것(ex) ver1,ver2) 을 commit 이라고합니다.
커밋(commit): 프로젝트 디렉토리의 특정 모습을 하나의 버전으로 남기는 행위 & 결과물
레포지토리(repository): 커밋이 저장되는 곳
프로젝트를 저장하기 위해 디렉토리를 만듭니다. 이 때 이 것을
프로젝트 디렉토리라고 표현합니다.
프로젝트에 필요한 것들을 여기에 저장합니다!(디렉토리,필요한 파일들)
만드는 방법
mkdir (파일명)
ex) mkdir mathTool

ls를 입력하고 잘 생성되었는지 확인해줍니다.이 프로젝트 디렉토리를 git으로 버전관리를 하기 위해선 어떻게 해야할까요??
이어서 명령어를 작성해봅시다.
설정하기!
git init
git + command 에 따라 하게되는 동작이 다릅니다.
git으로 어떤 행동을 할 때마다 앞에 git을 붙여줘야합니다.
-> 비어있는 레포지토리를 생성했다는 뜻입니다.
(즉 프로젝트 디렉토리의 각 버전이 담기는 저장소를 만들었다는 뜻.)

repository(저장소)가 생겼기때문에 버전관리를 할 수 있는데요
어떤 변화가 생겼을까요?
.git파일이 생겼습니다!

.git 파일안에는 어떤 것들이 있을까요?
자식디렉토리와 파일들을 볼 수 있습니다.-> git은 프로젝트 버전관리를 위해 자신만의 규칙을 가지고 복잡한 작업을 처리합니다. 그 작업을 하기위해 사용되는 것입니다.

파일을 생성하고 저장했으니 commit 을 해볼까요?
commit에 필요한것
1. 이름 2. 이메일 3. 커밋 메시지( 커밋에 대한 정보)
git config user.name "yejikang"
git에게 commit한 사람 알려주기
( 협업할 때 꼭 필요!)
configure (설정하다,구성하다)란 뜻
git config user.email "이메일주소@google.com"
git commit -m "Create file cal,Licence"
한번 작성해봅시다!

ls -al 를 통해 mathTool 파일에 추가된 파일들을 확인해봅시다. 'License' 와하지만 아래와 같은 글이 출력됩니다!
nothing added to commit but untracked files present
해결방법은??
' 이 파일들 commit 할거다!' 라고 설정해줘야합니다!
git + add + 파일의 이름git add cal.js
git add license
or
git add . (모든 파일 한번에 add)
다시 작성해볼까요?

아까와 다른 메시지가 출력됩니다. 한 줄씩 살펴보면
root-commit : 첫 번째 커밋이라는 뜻입니다.
2 files changed, 8 insertions(+) : 2개의 파일이 변경되었다, 8줄이 추가되었다.