git - 4
4장
1)
원격저장소(remote repositoy)
- 지역저장소에서 작업 후 원격저장소와 연결하여 변경내역을 반영
- 깃허브: 깃 사용을 위한 원격 저장소를 제공하는 서비스
깃이 없어도 깃허브로 버전관리가 가능하며, 지역저장소에서 깃허브를 원격저장소로 연결하여 사용이 가능
** 구글 드라이브와 같은 클라우드에도 백업이 가능하지만, 깃허브, 깃랩과 같은 사이트는 깃 전용 원격저장소로 생각할 수 있다
2)
깃허브 원격저장소 생성
: 깃허브가입 - 로그인 - 우상탄 '+' - New repository
3)
지역저장소를 원격저장소에 연결
: git remote add 원격저장소브랜치명 주소
- 깃에 원격저장소를 '주소'라 알려주고 해당 주소를 가리키는 브랜치로 '원격저장소브랜치명'로 지정한다
- 보통 로컬 저장소를 master이라 하는 것 처럼 원격 저장소를 origin으로 명명한다
: git remote -v
- 원격저장소가 정상적으로 연결되어있는지 확인
4)
원격 저장소 업로드, 다운로드
- git push : 원격 저장소에 파일 올리기
: 업로드시 github의 아이디와 비밀번호가 필요하다
- git push 지역의원격브랜치 지역의브랜치
: 지역저장소에서 가리키는 원격저장소 브랜치를 통해 원격 저장소를 접속하고 업로드하고자하는 지역브랜치를 원격 저장소에 반영한다
ex) git push origin master
-> 지역저장소 기준 origin은 원격저장소를 가리키는 브랜치, master는 지역저장소에서 사용하는 브랜치명이다
- git push -u 지역의원격 지역의브랜치 : 원격 저장소를 가리키는 지역저장소의 브랜치를 지역저장소의 브랜치에 연결
ex) git push -u origin master
-> 처음 한 번만 위의 명령어를 사용하면, 이후 git push만 해도 자동으로 원격저장소의 해당 브랜치로 업로드된다
(지역저장소의 브랜치인 master와 원격저장소의 브랜치인 origin을 서로 연결하였기 때문에 생략해도 문제가 없음)
- git pull : 지역 저장소에 파일 받기
- git pull 지역의원격 지역의브랜치
: 지역저장소에서 가리키는 원격저장소 브랜치를 통해 원격 저장소의 내용을 지역저장소의 특정 브랜치로 내용을 가져온다
ex) git pull origin master
-> 여기서의 master은 위의 master와는 달리 지역저장소의 master이다
** 아까 위에서 -u옵션을 사용해 연결하였다면 git pull만 해도 정상적으로 동작한다
5)
github에서 직접 수정 및 커밋하기
- 깃허브 로그인 - 해당프로젝트 클릭 - code탭 클릭 - Add file의 Create new file 클릭
6)
ssh(secure shell)을 통해 깃허브 접속
** SSH: 보안이 강화된 원격 접속방법. 기본적으로 개인키(private key)와 공용키(public key)로 나뉜다
- ssh키를 생성하고 이를 등록함으로 비밀번호 없이 접속이 가능하다
- 지역저장소에서 ssh 생성
ssh-keygen : 키 생성이후 ~/.ssh에 키가 생성된것을 확인가능(.pub가 공용키)
- 지역저장소의 ssh key를 원격저장소에 등록하기
: 지역저장소의 공용키를 복사
: 우상단 사용자아이콘 클릭 - settings - SSH and GPG keys 클릭 - New SSH key 클릭
- ssh 주소(키)로 지역 저장소와 원격 저장소 연결
: 원격저장소의 ssh주소 복사
: 지역저장소에서 'git remote add origin ssh주소' 명령어 실행
: git remote -v 명령으로 연결여부 확인가능
** 이제 비밀번호 없이 push pull 사용가능