Git

fork한 repo를 origin에 push

지미닝 2024. 3. 18. 20:17

저번에 혼자서 공부했던 git 사용법 가지고는 정말 아~무것도 할 수 없었음을 느끼는 중이다 저거가지고는 혼자서 프로젝트 한거 커밋하고 푸시하는 것 밖에 못함을.. 너무 늦게서야 깨닫게 되었다.

forkrepo에 내가 수정한 파일을 올리는게 굉장히 어지러웠다. 왜냐하면, 내가 fork한 이후 다른 분이 수정한 파일을 수정한다..라는 점이 굉장히 이대로 push하면 대참사가 일어날 것 같은.. 느낌을 주었기 때문이다.

그런데 어떻게 해야하지 어떻게 해야하지 고민을 해봐도 뭔가 내가 뭘 제대로 모르는지 알 수가 없었다. 아는게 있어야 내가 뭘 지금 원하고 근데 그 방법을 모르니 구글링을 해서 어찌저찌 답을 찾아가는데, 정말 뭐라고 검색해야 할 지 감이 오지 않았다.

아 정말 공부를 계속 열심히 해보면서 부딪혀봐야하구나 싶었는데, 막상 부딪히는 과정에서 만나는 사람들에게 미안함도 함께 온다는 점을 더욱이 느끼게 되었으며 그렇기에 더 빨리 피해주지 않을 수준만큼은 와야한다는 점을 깨닫게 되었다.

선배님한테 자문을 구하니 좋은 을 소개해주셨고 내가 제대로 설명할 줄 모르는 하고싶은 일을 선배님이 단번에 알아채서 이 글이 필요하겠다! 하고 보내주셔서 너무 감사했다.

아무튼 내가 그래서 원했던 것은

Fork한 저장소에 upstream의 최신 commit 가져오기

였음을... 알게 되었다!

음 저번 web스터디에서 선배님이 upstream 얘기를 엄청 많이 하셨는데 대충 "아 저장소구나~ ", "음 하다보면 알게되지 않을까?"라는 멍청한 생각을 하였는데..

upstream이란,

upstream은 곧 다른 사람의 GitHub의 저장소를 Fork한 경우 내 GitHuborigin이 되고, 처음 fork를 시도한 저장소를 upstream이라고 부른다.

음 결국에 이때까지 web스터디에서 선배님이 끙끙 앓으신 것은 내가 수정한 파일이 upstream이랑 상호작용하는 과정에서 문제가 있어서 그러셨구나를 알게 되었으며, 또한 오늘 내가 못한 것은 vs코드에서 내가 fork 한 저장소에서 수정한 내용을 upstreampush하는 방법을 몰랐다.

해결 방법

블로그 게시물을 참고하여 해결할 수 있었다.

Git 명령어로 수동 Sync을 하였다. 이때 사용한 명령어를 적어놓겠다. (앞에서 제시한 링크의 게시물에서 가져왔다.)

원격으로 upstream 주소 등록

 git remote add upstream [REPO주소]

내 로컬 저장소로 upstream 저장소에 있는 걸 Pull(Fetch+Merge)하기

 git pull upstream [브랜치명]

origin에 Push

 git push origin [브랜치명]


정말 배울게 너무너무... 많음을 알게되었다....

'Git' 카테고리의 다른 글

원격 저장소 사용하기  (1) 2024.03.18
branch를 합치는 두 가지 방법  (0) 2024.03.18
여러 branch 만들어보기  (0) 2024.03.18
과거로 돌아가는 법  (0) 2024.03.18
변화를 저장하는 법  (0) 2024.03.18