인터넷이나 네트워크 어딘가에 있는 저장소
Git clone
기존의 git repository를 복사
Gitlab 또는 Github에서 원하는 프로젝트에서 clone 버튼을 누릅니다
↓
아래와 같이 2개의 옵션을 볼 수 있습니다.
여기서 clone with HTTPS
옵션으로 Clone을 하게 됩니다.
↓
Git clone
뒤에 clone 버튼으로 확인한 원격저장소의 주소를 넣어줍니다
$ git clone https://gitlab.com/alwys/myproject.git
원격 저장소는 아래의 명령어로 연결할 수 있어요.
$ git remote add origin https://gitlab.com/group/project
저장소 주소는 다음과 같이 구성됩니다.
$ git remote add origin https://gitlab.com/group/project
gitlab.com => 웹 호스트 서비스
group => 그룹 명
project => 프로젝트 명
연결한 원격 저장소를 확인해보세요.
$ git remote
origin
$ git remote show origin
* remote origin
Fetch URL: https://github.com/.../git_test.git
Push URL: https://github.com/.../git_test.git
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
원격 저장소 단축 이름을 origin
에서 git_test
으로 변경
$ git remote rename origin git_test
주소가 변경되었거나, 필요 없어진 저장소는 아래의 명령어로 삭제할 수 있어요.
$ git remote rm git_test
Pull
원격 저장소에서 데이터 가져오기 + 병합(Merge)
Fetch
원격 저장소에서 데이터 가져오기
원격 저장소에서 데이터를 가져와 로컬 데이터와 병합합니다.
$ git pull
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 3 ...
Unpacking objects: 100% (3/3), done.
From https://github.com/.../git_test
0daf5d2...c61952d master -> origin/master
Updating 0daf5d2..c61952d
Fast-forward
README.md | 1 +
1 file changed, 1 insertion(+)
$ git log --all
commit f7b775d (HEAD->master, origin/master)
commit 725fc8b
commit fad4a9a
commit 1418700 init repository
git log
명령어로 변경된 파일을 확인하고 Merge 해줍니다.
$ git log origin/master
commit 8a9ed03b4d750ca0ef58e795af237cb32aa461b7
(origin/master, origin/HEAD)
Author: Elice <elice@elice.noreply.github.com>
Date: Mon Aug 12 11:15:58 2019 +0900
Update README.md
...
로컬 저장소에서 작업한 내용을 원격 저장소에 반영합니다
다른 사람이 먼저 Push한 상태에서는 Push할 수 없어요.
다른 사람이 작업한 것을 Merge부터 해주세요.
$ git push origin master
git remote add origin
(또는 다른 원격저장소 이름)으로 로컬저장소와 연결합니다.git fetch
또는 git pull
을 이용하여 원격저장소의 내용을 동기화합니다.git merge origin/master
로 병합을 완료해줍니다.git push origin master
를 이용하여 변경된 사항을 원격 저장소에 전달해줍니다.내 컴퓨터에 저장되어 있는 저장소와 원격저장소를 연결하기 위해서 아래와 같은 명령을 사용했습니다.
git remote add origin https://github.com/group/project
이는 원격저장소의 단축이름을 origin으로 지정한다는 의미입니다.
origin이 아닌 다른 이름으로 원격 저장소의 이름을 지정해 줄 수도 있습니다.
git remote add myproject https://github.com/group/project
기본적으로 만들어진 원격저장소의 이름은 origin이 default값 입니다.
때문에 clone으로 복사해온 저장소의 이름은 origin으로 통일되게 됩니다.
-v
옵션을 사용하면 지정한 저장소의 이름과 주소를 함께 볼 수 있습니다.
git remote -v
git remote -v
$ git remote -v
origin https://gitlab.com/group/project (fetch)
origin https://gitlab.com/group/project (push)