
노션에서 확인하기! [OT] 깃과 깃허브를 알아보자! 01. Git? GitHub? www.notion.so

Git으로 협업하기 Maintainer : 깃랩에서 특정 프로젝트의 최종 관리자를 의미하는 단어로, 프로젝트에 관한 가장 많은 권한을 갖고 있는 사용자 등급을 나타냄 Maintainer는 신규 개발자가 팀에 입성했다면, 그 개발자를 깃랩에 추가하고 권한을 부여할 수 있음. 이후 원래의 프로젝트와 똑같은 프로젝트를 신규 개발자의 계정 아래에 별도로 생성(복제)함. 이처럼 원본 프로젝트의 복제본을 만드는 것을 Fork 한다고 함. 신규 개발자는 복제된 프로젝트를 git clone을 통해 자신의 컴퓨터에 가져온 뒤 새 커밋들을 추가하고 자신의 복제본 프로젝트에 git push를 함. 그 다음, 복제본 프로젝트에서 원본 프로젝트에 Merge Request를 보냄. Merge Request : 복제본 프로젝트에 ..

Branch란? 특정 커밋을 가리키는 '포인터' 브랜치는 하나의 프로젝트에서 서로 다른 개발 흐름을 병렬적으로 가져가기 위해 사용함. 우리가 어떤 프로젝트를 깃으로 버전관리 하면 초기에 자동 셋팅되는 기본 브랜치 = master 브랜치 그리고 헤드는 보통 브랜치를 통해 특정 커밋을 가리키게 됨. 보통 master 브랜치에는 실제 서비스에 배포할 정도로 완성된 커밋들만 두고, 우리가 개발을 하면서 만들어진 커밋들을 다른 브랜치에 두는 것이 좋음. Branch 생성하기 'git branch 브랜치 이름'을 입력해주면 브랜치 생성 완료 - 브랜치를 새로 생성하면 헤드가 가리키던 커밋을 그대로 가리키게 됨 $ git branch {branch_name} Head를 다른 Branch로 옮기기 'git checko..

프로젝트를 컴퓨터에서 외부 저장소로 업로드한다면? (깃허브/깃랩 사용 시 장점) 1. 프로젝트 복구 가능 - 내 컴퓨터에 문제가 생겨 프로젝트가 사라져도 외부 저장소에 올려두었던 프로젝트를 그대로 가져오면 되기 때문에 복구가 가능하다. 2. 협업과 동시에 버전 관리 가능 - 내가 커밋 3까지 하고 외부 저장소에 올려두면 다른 팀원이 그 프로젝트를 자기 컴퓨터로 가져가서 커밋 5까지 만들고 다시 외부 저장소에 올리고, 내가 그걸 가져와서 커밋 8까지 만들고...의 방식으로 버전 관리와 협업을 동시에 할 수 있다. GitLab에 Push하기 Push는 .git 디렉터리 내부에서 관리되던 Repository 영역을 업로드 한 것 - git remote는 내 컴퓨터에서 외부 저장소에 관한 작업을 할 때 사용하는..

Commit을 왜 할까? 우리가 커밋을 남기는 이유는 작업 이력을 계속 남겨놓고 원하는 시점으로 자유롭게 이동하기 위해서임. Head란? 현재 내가 위치해있는 커밋을 가리키는 식별자 Head가 가리키는 커밋을 바꾸게 되면 워킹 디렉터리의 모습도 Head가 가리키는 커밋의 버전으로 바뀜. = Head가 가리키는 Commit의 모습대로 Working Directory의 모습이 바뀜. Head가 가리키는 커밋 바꾸기 이때 option은 hard, mixed, soft로 나뉨. $ git reset --{option} {커밋 아이디} Hard / Mixed / Soft 옵션 이해하기 Hard 옵션은 위험하므로 꼭 필요한 경우에만 사용 Mixed 옵션의 상태에서는 git add 후 커밋 가능 / 수정하고 싶다면 ..

Git 초기 설정 프로젝트 디렉터리에 들어가서, 'git init' 명령을 입력한다. Initialized empty Git repository in ~~가 뜬다면 정상적으로 실행된 것 프로젝트는 이제 git으로 버전 관리가 가능한 상태 $ cd [프로젝트명] $ git init 즉, 프로젝트 내부에 .git이라는 디렉터리가 생성된 것이며 git은 .git 디렉터리에 버전 관리를 하기 위해 필요한 것들을 알아서 저장하고 관리함으로써 우리가 버전 관리를 할 수 있도록 도와줌. Git 사용자 정보 설정 설정(configuration)을 의미하는 config를 통해 현재 git을 사용하는 user name과 user email을 설정. 프로젝트 디렉터리에 버전을 남길 때마다 그 버전을 남긴 사람의 정보에 방금..