Git&Github

23. [Git] push, pull 간편하게 하는 법

drizzle0925 2021. 8. 27. 13:27
728x90

push나 pull 명령어를 사용할 때는 인자로 <원격 저장소 별명> <원격 저장소 브랜치 이름>을 주었는데 보통은 원격 저장소와 로컬 저장소의 브랜치 이름이 같기 때문에 설정을 통해 인자를 생략하는 가능합니다.

 

1. 다음과 같이 -u 옵션을 주게 되면 브랜치를 바꾸기 전까지는 $git push 와같이 뒤에 인자를 생략하고 push 하는 것이 가능합니다.

$ git push -u origin master

 

브랜치를 생성 > 파일 수정 > git push 명령어를 입력할 경우 다음과 같이 화면이 나오면 push가 되질 않는다

git이 어디에 push 하면 좋을지 몰라서 나오는 에러입니다.

아래 명령어를 입력하고 나면 git push 만으로도 입력이 가능하게 됩니다.

$ git push --set-upstream origin branch1

 

2. 원격 저장소와 로컬 저장소의 모든 브랜치 이름이 동일하다면 다음 명령어를 입력해야 push, pull을 할 때 인자 없이 같은 이름의 브랜치라는 것을 알려줄 수 있습니다.

$ git config --global push.default current

 

3. upstream 설정하기

예를 들어 로컬 저장소의 브랜치 이름은 branch1인데 push 하는 원격 저장소 브랜치가 branch1이 아니라고 master에 push 하고 싶은 경우 필요한 설정입니다.

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

아래 내용은 작업하면서 에러가 났던 발자취를 메모한 내용입니다.

참고하지 않으셔도 무방합니다.

 

위에 설정을 로컬 branch1에서 수정한 내용을 원격 저장소 master 브랜치에 push 해보겠습니다.

1) 아래 명령어를 입력합니다.

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

 

2) 파일 수정하고

 

add, commit까지 진행합니다.

 

<원격 저장소 별명>과 <원격 저장소 브랜치 이름>을 지정하지 않고 git push를 해보겠습니다.

push를 해보려고 하니까 로컬에 원격 저장소와 이름이 동일한 master라는 브랜치가 존재해서 에러를 뿜는 거 같습니다.

 

master 브랜치를 삭제하고 다시 시도해보겠습니다.

master 브랜치를 삭제해도 업로드가 안되네요...

 

수정하고 나서도 에러가 떠서 일단은 아래 명령어를 입력해서 push 했습니다.

 

원격 저장소에 push는 잘 되었습니다.

 

728x90