작성 목적: 내가 작성한 코드를 Github Repository에 push 할 수 있다.
Git clone은 git이 설치되어 있어야 수행할 수 있다.
설치 링크: https://git-scm.com/downloads
*Git 설치 후 초기 설정을 해주어야 한다. 아니면 Git push 도중 다음과 같은 오류가 발생한다.
Git bash에서 초기설정하기
git config --global user.email "you@example.com"
// 사용자의 이메일을 등록합니다.
git config --global user.name "your Name"
// 사용자의 이름을 등록합니다.
git config --list
// 이메일과 이름이 정상적으로 등록되었는지 확인합니다.
일반적으로 프로젝트 명을 Repository 이름에 작성하는 것 같다.
Dashboard 좌측 상단을 보면 Top Repositories 가 나온다.
New 버튼을 누르면 새로운 Repository를 만들 수 있다.
Repository 생성 완료 후 들어가보면 다음과 같은 화면을 볼 수 있다.
사실 push 하는 방법은 빨간색 사각형을 친 부분의 코드를 사용해서 간단하게 할 수 있다.
*HTTPS 링크를 복사해두도록 한다.
*push 하기 전 주의사항
.gitingore 파일을 생성 후에, 종속성 관련 파일을 처리했는지 확인해야 한다.
*물론 그냥 올릴 수도 있지만, 프로젝트 용량이 커지기 때문에 일반적으로 처리한다.
VSC 를 켜고, push 할 폴더를 연다.
터미널을 켜고, 터미널 종류를 Git bash 를 선택한다.
다음과 같이 명령어를 실행한다.
git init
프로젝트 폴더에 .git 폴더가 생긴다.
안 보이는 경우 숨김 처리가 되어있기 때문에 숨긴 항목을 볼 수 있도록 설정해준다.
.git 폴더 삭제 후 git init 부터 명령어 입력하는 경우에 필요하다.
*중간에 명령어를 잘못입력한 경우에 .git폴더 삭제후 다시 git init부터 시작한다.
2. 파일 등록
git add .
. 은 모든 파일을 선택한다.
즉, 경로 내 모든 파일을 git 하는 명령어이다.
명령어 입력 후 아무것도 뜨지 않았다면 잘 진행되고 있는 것이다. (다음 단계로)
// 다음과 같은 에러 발생하는 경우
// warning: in the working copy of 'package.json', lf will be replaced by crlf the next time git touches it
git config --global core.autocrlf true
//Window 인 경우 Gitbash 터미널 입력
git config --global core.autocrlf input
//Linux, Mac 인 경우 Gitbash 터미널 입력
3. 선택된 파일 확인
git status
commit 할 파일 목록을 보여준다.
4. 커밋 메시지 등록
git commit -m"첫번째 커밋"
커밋 메시지를 등록한다.
5. 주소 등록
Repository 에 들어가면 뜨는 HTTPS 링크를 복사해온다.
git remote add origin https://github.com/{owner}/{Repositoryname}.git
오류가 뜨지 않으면 정상적으로 수행된 것이다. (다음 단계로)
6. branch 생성 및 push
git branch -M main
// main branch 를 생성합니다.
git push -u origin main
// main branch에 push 합니다.
main 은 기본적으로 생성되어 있는 branch 이다.
다른 branch 생성 후 해당 branch에 push할 수도 있다.
다음과 같이 로그인 화면이 뜰 수 있다.
push 가 완료되었는지 확인한다.
// git init 를 수행하지 않습니다. (첫 commit 시 쓰는 명령어)
git add .
git status
git commit -m"Section12 삭제"
git push -u origin main
위와 같은 방법으로 코드 수정시 다시 commit 할 수 있다.
우측 상단 2 commit 부분을 눌러보면, 첫 커밋부터 변경 내역을 확인할 수 있다.
push 에 오류가 생기는 경우 (git push origin main 명령어)
강제로 push 하지 말고 코드를 수정할 것: 충돌하지 않고 정상 push 되도록 코드 수정
명령어를 잘못입력하는 경우 등에는 다시 처음부터 명령어를 입력한다.
---> .git 폴더 삭제 후 git init 부터 명령어 입력
팀 프로젝트를 하는 경우 팀원이 push 했을 때,
owner가 pull request 를 받아줘야 Repository에 추가로 적용(업데이트)된다.
git clone 이후 push할 때도 git init 을 입력하지 않는다.