[Git] 계속되는 git 명령어 정리!(2)
저번 시간에 이어 계속된 git 명령어 정리 시간 😅
언젠간 익숙해지겠지ㅎㅎ
1. local에서 remote로! ⛸
local git에서 버전 관리를 위한 commit을 했다면 remote로 보내서 기록하자!
$ git push <단축이름> <브랜치명>
$ git push --set-upstream origin <브랜치명>
여기서 단축이름은 remote 의 단축이름을 말하는 것이고,
브랜치명은 그 해당 remote 중 push하고 싶은 브랜치 이름을 말한다!
git push --set-upstream origin <브랜치>
의 경우 origin은 기본적으로 clone 을 하였던 url의 remote를 의미하는 default 단축이름이다!
앞으로 <브랜치> 에서 push 명령어를 내리면 자동으로 origin의 <브랜치>로 push하겠다라는 뜻
현재 local 브랜치와 원격브랜치 사이를 명시적으로 연결해주는 세팅이 다음 옵션이다
2. remote 에서 local 로 업데이트! 🚘
$ git pull
$ git pull origin <브랜치명> // 원격 특정 브랜치를 나의 local로 pull
$ git fetch
여기서 가장 집중적으로 봐야하는 것은 fetch와 pull의 차이점이다!!
가장 먼저 local에 같은 repository를 다른 위치에 clone 한 후 한쪽 repository에서 파일에 내용을 추가하고
remote에 push를 했다!
다른 위치에 있는 local repository는 아직 update 하지 않았기에 변경 사항을 fetch를 통해서 받아오자!
보이는 것 처럼 origin/kane = remote와 HEAD = local 이 병합되어 있지 않은 것을 볼 수 있다!
그렇다!! fetch는 변경사항을 가져올 뿐 병합을 실행하지 않는다!
<출처 : 백블로그>
그렇다면, pull은 어떨까?? 🧐
pull을 실행시켰을 경우에는 origin/kane = remote와 HEAD = local 이 병합되어 있는 것을 볼 수 있다!
그렇다... pull은 fetch + merge 이다!
remote에서 local로 변경사항을 가져올 때 신중하게 가져오고 싶다?! 그럼 먼저 fetch를 통해서
log를 보며 변경사항을 신중히 보고 merge 함으로써 pull 기능을 수행할 수 있다!!
3. Remote 저장소에 대해 궁금할 때는??
우리는 다른 사람들과 협업을 하기 위해서는 Remote 저장소를 관리해야 한다.
그럼 local과 연결되어 있는 remote 저장소의 정보를 확인하는 방법에 대해서 알아보자!
$ git remote
git remote 명령으로 현재 프로젝트에 등록된 리모트 저장소를 확인할 수 있다.
이 명령은 리모트 저장소의 단축 이름을 보여준다.
현재 origin이라는 단축 이름은 clone을 통해서 가져온 저장소의 단축 이름이다 (default)
$ cd grit
$ git remote -v
bakkdoor https://github.com/bakkdoor/grit (fetch)
bakkdoor https://github.com/bakkdoor/grit (push)
cho45 https://github.com/cho45/grit (fetch)
cho45 https://github.com/cho45/grit (push)
defunkt https://github.com/defunkt/grit (fetch)
defunkt https://github.com/defunkt/grit (push)
koke git://github.com/koke/grit.git (fetch)
koke git://github.com/koke/grit.git (push)
origin [email protected]:mojombo/grit.git (fetch)
origin [email protected]:mojombo/grit.git (push)
-v
옵션을 추가해서 사용하면 이 처럼 단축이름과 url을 동시에 볼 수 있다!
그럼 이렇게 많은 remote 저장소는 어떻게 추가하는 거지??
$ git remote
origin
$ git remote add pb https://github.com/paulboone/ticgit
$ git remote -v
origin https://github.com/schacon/ticgit (fetch)
origin https://github.com/schacon/ticgit (push)
pb https://github.com/paulboone/ticgit (fetch)
pb https://github.com/paulboone/ticgit (push)
이렇게 git remote add <단축이름> <url>
명령어를 통해서 remote 저장소를 추가할 수 있다!
그리고 이렇게 추가한 remote 들에 대한 자세한 정보도 볼 수 있다
맨 밑에 나와 있는 것을 자세히 보면
kane pushes to kane (up to date)
는 git push
를 실행할 경우 어떤 브랜치에 push되는지도 알려준다!
마지막으로 저장소의 이름을 바꾸거나 리모트 저장소를 삭제하는 과정을 해보겠다!
$ git remote rename pb paul // pb 저장소 단축이름을 paul로 변경
$ git remote remove paul
$ git remote
origin
간단하죠? 이런 식으로 하면 굉장히 능률적인 git 관리가 가능할 것 같죠?
오늘은 이까지 하고 내일은 branch 를 생성하고 해당 branch 로 이동해서 관리하는 것에 대해서 다루기로 하겠습니다~
👋🏼 👋🏼
Author And Source
이 문제에 관하여([Git] 계속되는 git 명령어 정리!(2)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@leeyoungwoozz/Git-계속되는-git-명령어-정리2저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)