git push - github 사용하기
remote repository
Local의 Git Repository가 아닌 외부서버 공간에 존재하는 Git Repository
실제로 개발은 많은 사람들이 협업하여 개발을 하게 되는 데 이렇게 협업을 하는 상황에서는 함께 개발 중인 프로젝트의 버전을 어떻게 관리하고 어떻게 이를 공유할 수 있을까? 기존처럼 로컬 저장소에 존재하는 Git Repository를 함께 열람할 수 있는 외부 서버 공간에 올려두고 이를 함께 공유하면 팀원들은 서로 동일한 버전으로 프로젝트의 버전을 맞추고 개발을 진행할 수 있게 된다.
실제로 이 Remote Repository를 사용할 수 있도록 해주는 서비스는 몇가지가 존재하는 데 그 중에서 가장 대표적으로 사용되는 것이 바로 "Github"이다.
Github을 사용하면 아래와 같이 Repository 라는 항목에서 자신만의 remote repository를 생성하고 관리할 수 있고, 이를 타인에게 쉽게 공유할 수도 있다.
로컬 저장소에 존재하는 Git Repository를 Github의 Remote Repository에 연결하려면 어떻게 해야할 까? 이를 위해서는 먼저 외부 서버에 Remote Repository를 생성하고 해당 Repository의 URL을 있어야 한다.
우선 아래와 같이 github 프로필 상에서 새로운 repository를 생성한다. github repository 항목에서 우측 상단에 존재하는 new 버튼을 클릭하여 아래의 창으로 넘어간다. 아래의 창에서 생성할 Repository의 이름과 공개, 비공개 여부를 결정한 후 아래에 있는 Create Repository 버튼을 클릭하여 새로운 Repository를 생성한다. (아래 예시에서는 gitex라는 이름의 remote repository를 생성하였다.)
Remote Repository가 정상적으로 생성되면 아래와 같이 해당 Repository의 url과 관련 도움말들이 나온다. 여기서 상단에 나오는 해당 Repository의 URL이 중요하다.
Repository 목록으로 들어가보면 이전 단계를 통해서 생성한 gitex remote repository를 확인할 수 있다. 그렇다면 이제 해당 remote repository와 로컬 저장소의 git repository를 연결하는 작업을 수행해보도록 하겠다.
우선, 로컬 저장소에서 새로운 git repository를 생성한다. 로컬 저장소에서도 생성한 remote repository 이름과 동일한 gitex라는 이름의 git repository를 생성하였다. 실제로는 두 이름이 무조건 같을 필요는 없다. 하지만 나중에 로컬 저장소와 원격 저장소 사이에서 repository명이 서로 다르면 혼선을 빚을 수 있기 때문에 통일시켜주는 것이 좋다.
그리고 이어서 아래와 같이 해당 reposoitory안에 몇 개의 파일을 생성하였다.
그리고 아래와 같이 해당 내용을 Git repository에 반영시키기 위해서 해당 파일들에 대한 작업내용을 add 및 commit 한다.
git remote add origin (원격 저장소 url)
이제 로컬 저장소의 git repository와 원격 저장소의 remote repository를 연결해주어야 한다. 이 둘을 연결할 때 "git remote add" 명령을 사용하게 되는 데 여기서 origin은 원격 저장소에 대한 별칭을 지정하는 것으로서 자유롭게 지정해서 사용하면 된다. 하지만 관례적으로 origin을 사용하기 때문에 해당 예시에서는 origin으로 사용하였다.
그리고 마지막에는 이전에 github에서 새롭게 생성한 remote repository의 url을 입력해주게 되는데, 해당 url을 그대로 복사해서 붙여넣기 해주면 간단히 입력할 수 있다.
git remote -v
이후 git remote 명령에 v옵션을 사용해서 아래와 같이 출력된다면 로컬 저장소의 Git Repository와 원격 저장소의 Remote Repository가 정상적으로 연결된 것이다. 해당 명령을 통해서 현재 연결되어 있는 원격 저장소가 무엇인지 확인하거나 정상적으로 연결되었는 지를 쉽게 확인할 수 있다.
git push (원격저장소 별칭) (Branch 명)
그렇다면 이제 로컬 저장소의 Git Repository의 내용 즉, 파일과 commit 내용을 전송해보도록 하겠다. 위에 언급한 것처럼 원격저장소로 이를 전송하기 위해서는 "git push (원격저장소 별칭) (Branch 명)" 형식의 명령을 사용하게 되며 Branch에 대해서는 나중에 다룰 것이니 일단 넘어가도록 하자.
해당 명령을 입력하면 아래와 같이 github의 username과 password를 입력하라는 메시지가 나오는 데 이를 순서대로 입력해주면
아래와 같이 원격저장소로 로컬저장소의 내용에 대한 전송이 이루어진다. 이제 github으로 이동해서 전송이 정상적으로 처리되었는 지 확인해보도록 하겠다.
아래와 같이 github의 repository에서 gitex를 선택하여 들어가보며 로컬 저장소에서 작업한 파일들이 정상적으로 push 된 것을 확인할 수 있다. 이후에도 로컬저장소에서 작업한 내용을 push 하게되면 github의 remoter repository에도 이를 반영되게 할 수 있다.
git 관련 명령을 통해서 commit된 각 버전들에 대해서 변경된 내용, 기록, 이력들을 터미널 상에서 확인할 수 있지만 github에서는 아래와 같이 조금 더 편리하게 변경된 내용이나 commit 기록들을 더 편리하게 확인할 수 있다. 아래에서 확인할 수 있듯이 터미널 상에서 보는 것보다 훨씬 직관적으로 어떤 부분이 변경되었는 지를 더 쉽게 확인할 수 있다. (빨간색으로 나와 있는 부분은 이전 버전의 소스, 녹색부분은 이후 추가, 변경된 내용을 의미한다.)
'Tools > Git, Github' 카테고리의 다른 글
Git 실습 시나리오 따라해보기(1) (0) | 2021.01.17 |
---|---|
git branch, merge (0) | 2021.01.16 |
git checkup - 수정한 내용 취소하기 (0) | 2021.01.14 |
git mv - 파일이름 변경하기 (0) | 2021.01.13 |
git rm - 파일 삭제하기 (0) | 2021.01.12 |
댓글
이 글 공유하기
다른 글
-
Git 실습 시나리오 따라해보기(1)
Git 실습 시나리오 따라해보기(1)
2021.01.17 -
git branch, merge
git branch, merge
2021.01.16 -
git checkup - 수정한 내용 취소하기
git checkup - 수정한 내용 취소하기
2021.01.14 -
git mv - 파일이름 변경하기
git mv - 파일이름 변경하기
2021.01.13