1. 내 github에 추가할 상대 repository를 fork해오기(오른쪽 위에 포크모양 클릭)
2.fork해서 만들어진 내 github의 repository url을 복사 후 받아오기 (clone URL)
3. 원격 저장소 내 내부 저장소로 받아오기.
git clone [Clone URL]
4. pull request작업 수행할 branch 생성
git checkout -b [branchName]
5. 원본 저장소를 원격 저장소에 추가.
git remote add origin(branchname) [Clone URL]
6. 코드 수정 및 파일 추가
7. 수정사항을 add
git add [fileName]
8.add 한 파일들을 commit
git commit -sm "[commit mesagge]"
9. 내가 찍어온 repository의 branch로 push
git push origin(Branch name) [branchName]
10. fork해온 내 레포에서 pull-request작성해 보내기.
11.원본 레포 관리자는 변경 내용을 확인 후 PR을 Merge할지 말지 여부를 결정.
-git status
-git checkout master
-git merge [branchName]
12. Merge이후 동기화 및 사용한 branch삭제
git pull origin(branchname)
master branch상태에서 시행. 코드 동기화
git branch -D [branchName]
branch 삭제.
13. 향후 추가 요소 발생 시 원본 통기화 (pull해서 받아 온 후 branch생성 후 동일하게 진행.)
그런데 원본 레포가 업데이트가 많이 되어 Fork해온 레포에 최신화가 안되었을 경우 문제가 생기는데
$ git remote add upstream [원본 레포 클론주소]
를 통해 upstream이라는 이름으로 git remote -v에 upstream repo를 추가시킨다.
$ git fetch upstream
을 통해 원본 저장소로 부터 업데이트 된 내용을 fetch한다.
$ git checkout master
$ git merge upstream/master
원본레포의 master branch로 부터 나의 local master branch(내 컴퓨터 깃)로 merge한다.
$ git push origin master
명령을 통해 내 로컬 레포를 원격 레포로 push해주면 원격 레포도 최신화 완료!
++++
push에러뜨는 경우 강제푸시
git push -u origin +master
'GitHub&Git' 카테고리의 다른 글
[Git] Git Rebase로 Conflict 해결 (0) | 2022.10.02 |
---|---|
[Git] 원격 repository branch 삭제 (0) | 2022.05.11 |
[Git] Reset --soft, --mixed, --hard (0) | 2022.05.11 |
토큰 만료돼서 푸시안될때. (0) | 2021.07.28 |
[GitHub] 깃헙 잔디 사라졌을 때 당황하지 않고 복구하는 방법. (0) | 2021.07.25 |