1. Github Repository 생성
- 가장 먼저 깃허브에 들어가 로그인을 한다.
- 왼쪽 상단에 있는 Top repositories 옆에 New 버튼을 누른다.
- New 버튼을 누르면 해당 화면이 나오게 된다.
- 맨 위 Repository name은 우리가 사용하게 될 저장소 이름이다. (나의 경우 MsOffice Parser)
- Repository name 아래 Description은 저장소의 설명이다.
- Add a README file은 추가해도 되고 추가하지 않아도 된다.(나중에 추가 가능)
입력을 다 했다면 오른쪽 하단에 Create repository를 클릭.
- 위의 화면과 같이 Repository가 생성된 것을 확인할 수 있다.
- README file을 생성하였다면 위 화면 처럼 README file에 repository name과 description가 있다.
2. Local Repository에서 Git 설정
- 가장 먼저 Github에 연결할 Local Repository로 이동한다.
git init
- git init을 통해 Git 저장소를 초기화한다.
- 해당 명령을 사용하면 Git으로 관리할 수 있게 되어 commit이나 push를 할 수 있다.
git branch -m main
- 해당 명령은 로컬 저장소의 branch를 master에서 main으로 변경해준다.
- 이걸하지 않으면 나중에 push할 때 master에서 main으로 연결하는 작업을 다시 해야한다.
목차 4번 "master에서 main으로 연결" 에 설명해놨으니 참고.
git add .
git commit -m "수정 사항"
- git add 명령을 통해 Git이 추적할 수 있도록 파일을 추가한다.
- git commit 명령을 통해 변경사항을 로컬 Git 저장소에 저장한다.
3. Local Repository와 Github Repository 연결
git remote add origin [원격 저장소 URL]
- git remote는 원격 저장소의 이름을 설정한다.
- 보통 origin을 사용.
git push -u [원격 저장소 이름] [로컬 저장소 브랜치 이름]
- [원격 저장소 이름]은 git remote로 설정한 origin이다.
- [로컬 저장소 브랜치 이름]은 보통 master이나 위에서 main으로 바꿔주었기 때문에 main으로 입력한다.
- 만약 git fatal: invalid refspec 이런 오류가 뜬다면 git branch 명령을 통해 브런치를 확인한다.
- git push 명령을 통해 로컬 저장소에 있는 내용을 원격 저장소로 푸쉬한다.
이제 Github로 돌아가면 Github Repository에 잘 푸쉬된 것을 확인할 수 있다.
먄악 위에처럼 푸쉬를 했는데 아래와 같은 오류가 난다면?
PS C:\coding\react-for-beginners> git push origin main
To https://github.com/PBDott/React-MoiveService.git
! [rejected] main -> main (non-fast-forward)
error: failed to push some refs to 'https://github.com/PBDott/React-MoiveService.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. If you want to integrate the remote changes,
hint: use 'git pull' before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
이 명령을 통해 원격 저장소의 변경사항을 로컬 저장소에 강제로 병합한다.
git pull origin main --allow-unrelated-histories
그리고 다시 푸쉬를 진행한다.
git push origin main
위의 git branch -m main을 하지 않았다면 현재 main branch에는 README 파일만 있고 push한 파일이 생성되지 않은 것을 확인할 수 있다.
4. master에서 main으로 연결
- 생성했던 Github Repository로 가보면 Compare & pull request가 뜬 것을 확인할 수 있다.
- 현재 2개의 branch가 있고, master branch로 들어가면 push한 내용들이 있다.
- master 브런치로 들어가보니 내가 push 했던 파일이 들어가 있다.
- 즉, 브런치가 두개로 나뉘어지며 main 브런치에 push가 되지 않은 것이다.
이 이유는 Github에서 master라는 용어를 main으로 대체해서
Github에서 repository를 생성하면 main이라는 브런치로 생성되는 것이다.
git branch -m main
git branch
- git branch 명령을 통해 branch를 master에서 main으로 바꿔준다.
git pull origin main --allow-unrelated-histories
- allow unrelated histories는 독립적인 두 branch를 병합한다.
- 즉 main으로 병합시킨다.
git push origin main
- git push origin main을 통해 master가 아닌 default repository인 main에 푸쉬를 해준다.
main branch에 연결 완료.
728x90
반응형
'Git' 카테고리의 다른 글
[Git] 원격 저장소 설정하기 (0) | 2024.08.29 |
---|---|
[Git] 깃허브(Github) git add 명령 취소하기 (0) | 2024.08.21 |