Git

깃허브로 백업하기

코딩공부 2021. 12. 30. 23:53

[ 5일 완성 코스 3일차 ]

 

04장 깃허브로 백업하기

04-1 원격 저장소와 깃허브

원격저장소

깃에는 로컬 저장소와 원격 저장소를 연결하여 버전 관리하는 파일들을 쉽게 백업할 수 있음

원격 저장소는 로컬이 아닌 컴퓨터나 서버에 만들어진 저장소를 말함

 

현재까지는 로컬 컴퓨터에 작업을 하고 로컬 저장소에 커밋하여 저장하였음

 

04-2 깃허브 시작하기

 

04-3 지역 저장소를 원격 저장소에 연결하기

지역 저장소 만들기

$ git init loc-git
$ cd loc-git
$ vim f1.txt
// f1.txt a 넣고 저장

$ git add f1.txt
$ git commit -m "add a"

 

원격 저장소에 연결하기

 $ git remote add origin

$ git remote add origin 뒤에는 github에서 복사해온 https git 주소

 $ git remote add origin https://github.com/ohjihoon2/test-git.git

해당 명령은 원격 저장소(remote)에 origin을 추가(add) 하겠다고 git에게 알려주는 것

origin은 github 저장소 주소 (https://github.com/...)를 가르킴

 

깃허브 저장소 주소를 그대로 쓰면 너무 길어서 origin 이라는 단어로 줄여서 remote 에 추가하는 것

 

지역 저장소를 특정 원격 저장소에 연결하는 것은 한번만 하면 됨 

 

$ git remote -v

이런식으로 출력되면 연결이 잘 된것임

 

 

04-4 원격 저장소에 올리기 및 내려받기

원격 저장소에 파일 올리기 -git push

$ git push -u origin master

지역저장소 branch를 origin, 즉 원격 저장소의 master 브랜치로 푸시하라는 명령

'-u' 옵션은 지역 저장소의 브랜치를 원격 저장소의 master 브랜치에 연결하기 위한 것으로 처음에 한번만 사용

 

후에 깃 로그인 창이 뜨면 로그인 

push가 끝났다면 원격 저장소에 올라갔다는 뜻

깃 허브에서 새로고침을 하면 f1.txt파일이 원격 저장소에 등록되어 있음

 

 

추가로 푸시하러면 

c3.txt파일을 추가 후 커밋하고

$ git push

만 하면 처리 되지만

현재 github는 기본 branch를 master를 사용하지 않고 main를 Default branch로 사용하여

제 경우에는 master branch가 새로 생성되었음 

하여

 

$ git branch --set-upstream-to=origin/master master

 

origin을 master와 연결 해주는 작업을 처리해 주었음.


git push 만으로 원격 저장소에 push되는 것을 볼 수 있음

 

 

깃허브 사이트에서 직접 커밋하기

 

깃허브 사이트에서 add file를 선택하고 Create new file 클릭 

 

 

 

작성 후 commit new file을 클릭 하면 파일이 업로드 됨

 

원격 저장소에서 파일 내려받기 -git pull

$ git pull origin master

원격 저장소에서 소스파일을 가져옴.

 

 

04-5 깃허브에 SSH 원격 접속하기

SSH 원격 접속이란

SSH = Secure Shell 

보안이 강화된 안전한 방법으로 정보를 교환하는 방식 

SSH는 기본적으로 Private Key와 Public Key를 한쌍으로 묶어서 컴퓨터를 인증

퍼블릭키는 외부에 공개되는 키이고 프라이빗은 로컬 컴퓨터에 다른 사람들은 모르게 저장되는 키

 

깃허브에 등록해두면 로컬 컴퓨터의 터미널 창에서 깃허브를 이용할때 언제 어디서든 접속이 가능하게 됨

 

SSH 키 생성하기

$ ssh-keygen

홈디렉토리에서 ssh-keygen

 

실수로 home 디렉토리로 이동하지 않고 작업 실행

Your identification 이 프라이빗 키 경로 

Your public key 이 퍼블릭 키 경로

 

깃허브에 퍼블릭 키 전송하기

SSH 방식으로 접근하려면 먼저 로컬 컴퓨터에 있는 Public key를 깃허브 서버로 전송한 다음 저장

로컬 컴퓨터에서 깃허브 저장소로 접속하면 로컬 컴퓨터에 있는 Private key와 깃 허브 서버에 있는 퍼블릭 키를 비교하여 서로 맞으면 로컬 컴퓨터와 깃 허브 저장소가 연결됨 

 

$ cd ~/.ssh
$ cat id_rsa.pub

 

해당 내용을 복사

 

깃허브에 로그인후 오른쪽 상단의 setting

 

key 부분에 복사한 코드를 붙여놓고 title을 입력하고 ssh키를 추가함

 

== 깃허브 서버에 public key를 등록 해 놓은 과정

 

 

SSH 주소로 원격 저장소 연결하기

깃허브에 새로운 repository를 생성하고 SSH 주소를 복사

$ cd ~
$ git init connect-ssh
$ cd connect-ssh

$ git remote add origin // 복사한 주소 붙여넣기
$ git remote add origin git@github.com:ohjihoon2/test-git.git

 

오류 메시지 없이 $ 출력되면 정산적으로 연결된 것

 

SSH로 연결을 하면 추가적으로 원격저장소를 사용하는 동안 로그인 정보를 요구하지 않기 때문에 편리함