깃 과정 정리 CLI
1. 깃 관리할 프로젝트 폴더 커밋, 깃허브에 올리기 - push
고양이가 자기가 만든 로컬 저장소에 있는 프로젝트 파일을 원격 저장소에 올려 공개하는 것
- pwd
현재 디렉토리 위치 확인
- cd ..
이전 디렉토리로 이동
- cd ./
프로젝트 폴더로 이동하기
- git init
내 컴퓨터 프로젝트 폴더에서 "여기에다 git을 사용할 것" 명령
.git 이라는 숨겨진 폴더가 만들어짐 : 이게 "로컬 저장소"
한 폴더에 하나의 로컬 저장소만 유지해야 한다
- git add
내가 변경한 파일 중 올리기 원하는 파일만 선택
페이지 1,2,3 작성 후, 올리기 원하는 파일인 페이지 1,2만 선택해서 add 후 커밋
git add . => 폴더 내의 모든 파일 올리고 싶을때
- git commit -m ("첫 페이지 제작")
선택한 파일들을 한 덩어리로 만들고 설명 적어주기 "커밋 메세지"
commit = 하나의 버전 (시간 여행 가능)
고양1 commit = 페이지 1,2,3
고양2 commit = 페이지 1,2(수정본),3
->최신 버전이 이상하면 고양 1버전으로 다시 돌아갈 수 있음
- git log
commit한 git log 내역 보기
- GitHub 사이트로 가기
GitHub 사이트에 프로젝트 저장소(repository) 만들기
- git remote add (origin-원격저장소 이름) (저장소 주소)
다시 gitbash로 가서 GitHub 저장소 주소를 내 컴퓨터 프로젝트 폴더에 알려주기 ("주소" 하면 오류 뜸, 그냥 주소 작성)
원격저장소를 origin이라는 이름으로 추가
- git push (origin 저장소에) (master 브랜치로)
내가 만든 덩어리 GitHub에 올리기
origin저장소에 master branch로 내 커밋들 올리기
커밋 상식
- 커밋은 의미있는 변동사항을 묶어서 만든다
- 수정한 파일을 묶어 하나의 커밋으로 만듦
- 동료 개발자(or 미래의 나)가 어떤 파일을 수정했는지 손쉽게 파악 가능
- 커밋 메세지는 적는게 나중에 도움됨
- 커밋은 기차처럼 싸인다 : 맨처음 파일에서 부터 수정사항이 착착
2. 다른 사람이 만든 저장소 받아오기 - clone
신입 개발자 문어가 고양이가 올린 커밋 받아오는 것
: clone을 하면 원격 저장소의 코드를 내 컴퓨터에 받아올 수 있으며 로컬 저장소(.git 폴더)도 자동으로 생김
- pwd
현재 위치
- cd ..
octopus의 프로젝트 폴더로 이동
- git clone (github repository clone or downoad 클릭하면 있는 url주소) .
clone해서 받아오면 .git 파일이 자동으로 생김
. 까지 마지막에 붙여줘야 현재 폴더에 clone이 잘됨
<=> 이렇게 하지 않으면 boxiting이라는 폴더가 새로 생겨버림=> ls로 확인 후 => rm -rf boxiting/으로 지워주고 다시 git clone (url) . 해줌
- git log
.git 버전 정보가 다 저장되어 있어서 git log 전부 확인 가능
문어도 원격 저장소에 push 권한이 있는 경우
: 변경 사항과 관련된 commit을 만들어서 clone한 원격 저장소로 push
- git add 먼저
모든 변경사항이 추가되게 됨
- git commit -m "수식어 추가"
- git push origin master
push 권한 주는 법 : 다른 사람이 리퍼지토리에 기여할 권한 주기
repository - settings - collaborators 권한 추가
문어가 원격 저장소에 업데이트 한 데이터 고양이가 받아오는 것
: pull 명령어로 원격 저장소의 업데이트 버전, 데이터 받아옴 (push 반대말 <=> pull) ,
고양이의 로컬 저장소에 문어 A commit 받아오기
- cd ../boxiting-cat
boxiting-cat 폴더로 이동
- git pull orgin master
풀 명령어로 문어가 새로 올린 커밋 받아옴
git pull (원격저장소 이름) (브랜치 이름)
origin이라는 remote에서 master branch의 업데이트 파일 땡겨온다.
- 새로 업데이트 된 파일 내 폴더에서 확인 가능