repository 생성 및 초기 업로드

  1. 깃허브 접속해서 레포지토리 생성하기

  2. https:// (원격 저장소 주소) 복사하기

  3. 올리고 싶은 폴더 및 파일에서 git bash 접속

  4. 기존 디렉토리를 Git 저장소로 만듬 (로컬 → 서버)

    git init
    

    → 디렉토리 안에 .git 이라는 하위 디렉토리 생성된다.

  5. 로컬 저장소를 원격 저장소와 연결

    git remote add origin 복사한 원격 저장소 주소
    git remote -v
    

    → 버전 확인해보면 연결된 원격 저장소가 뜬다.

  6. branch 명으로 master에서 main으로 변경하기

    git branch -m master main
    
  7. 순서는 add → commit → pull → push 이다.

    git add .
    git commit -m "커밋 메세지"
    git push origin main
    

    → pull은 원격저장소에 있는 내용을 한번에 내려받아서 최신 커밋과 내 로컬파일과 자동 병합하는 것이다. 원격저장소가 로컬저장소보다 더 최신 커밋이 있을때만 내려받으면 된다.

이미 생성된 repository clone

  1. clone할 repository에 상단 코드를 클릭하면 HTTPS, SSH, CLI 등으로 클론할 수 있다. 이 주소를 복사해온다. (보통 HTTPS)

    git clone 복사한 원격 저장소 주소
    
  2. 각자 코드 작성 (변경사항 만들기)

  3. branch 생성하기

    git branch                      # 현재 브랜치 확인
    git checkout -b 브랜치 이름      # -b 옵션은 체크아웃과 동시에 '브랜치 이름'으로 이동 (기존에 없었다면 생성 후 이동)
    
  4. add → commit → pull → push ( 변경사항이 있다면 제발 pull 하기 전에 commit하기)*

    git status                     # 현재 변경사항이 있는지를 보여줌.
    git add 변경된 파일             # status로 확인한 변경된 파일명 입력
    git commit -m "커밋 메세지"     # add 한 파일의 변경사항에 대한 간단한 설명
    git status                     # 다시 확인해서 방금 커밋한 파일이 변경사항에서 사라졌는지 확인
    git pull
    git push
    
    # 만약 브랜치 생성 후 첫 push 라면
    git push --set-upstream origin 브랜치명    # 원격에는 내가 로컬에서 생성한 브랜치가 없기 때문에 생성해주어야 한다.
    

    → 새 브랜치에서 push까지 마치고 원격 저장소로 가면 자동으로 변경사항에 대한 Pull Request를 만들라고 한다. 없어도 그냥 [Pull Request] 가서 생성하면 됨.

commit 취소하기

git log              # 커밋 로그가 최신순으로 쭉 나옴.

git reset HEAD^      # 최근 1개 commit 취소하기
git reset HEAD^^     # 최근 2개 commit 취소하기
git reset HEAD~n     # 최근 n개 commit 취소하기

→ reset 시에는 반드시 add, commit 후 push 할때 force push 해야한다. (위험할수도…)

git push -f          # force push