Git

jeongjwon·2023년 3월 9일
0

SEB FE

목록 보기
17/56

예전부터 github 를 써왔지만 항상 드문드문 사용해서 명령어를 까먹어 매번 검색해보기도 했고, 자칫 잘못하다가 내부 문서에서 충돌이나 문제가 발생할까봐 무서웠다. 이 수업을 통해서 이젠 까먹지 않았으면 좋겠고, 또 까먹는다면 다른 사람의 블로그가 아닌 내 블로그를 통해 잘 진행되도록 깃 명령어에 대한 글을 잘 정리하고 싶다.


📌 Git - Local , Remote git repository

📌 내 원격 repository 와 내 로컬 repository 연결하여 혼자 작업하기

  1. 내 컴퓨터 작업 환경에서 작성한 파일을 저장한다.

  2. github 내에서 원격 repository 를 생성한다.

  3. git remote add <name> <url> 원격 repository 의 name 과 url 을 설정해준다.
    git remote -v - 원격 repository 가 잘 연결되었는지 확인하기 위함. 연결된 repository의 목록과 주소 확인(fetch, push 가 나오면 OK)

  4. git init 코드를 저장하고 디렉토리를 만들고 해당 ({}./git 폴더가 생성되어 git 활용을 위한 디렉토리가 생성된다.)

  5. git add 작업공간의 파일 및 디렉토리를 git 의 관리 하에 있는 상태로 올려준다. untracked files -> staging area
    git add . - staging area 에 모든 파일을 한 번에 추가
    git add <경로명> - 경로에 있는 파일을 추가
    git status - staging area 로 변경 여부 확인 (빨간색 x, 초록색 o)

  6. git commit : staging area 에 올라온 파일에서 로컬 git repository에 코드를 기록한다.
    git commit -m "" - 메세지와 함께 작은 단위로 커밋하면 간결하고 공유하기도 쉽고 가독성이 높아진다.

  7. git push <remote repository name> <now branch>
    로컬 repository (현재 branch) 에서 기록한 내역을 원격 repository name 에 push한다.
    git push -u origin main - 원격 repository origin의 main 브랜치에 로컬 리포지토리 main 브랜치 내용을 업데이트

  8. git log 커밋 로그 확인



📌 fork , clone 하여 작업하기

  1. github 에서 다른 사람의 원격 repository 에서 자신의 원격 repository 로 fork 복사한다. 이는 기존의 프로젝트에 영향을 미치지 않기 때문에 서로의 프로젝트에 영향을 주지 않는다. 복사하여 원본 작업물을 수정해서 반영하고 싶을 때 사용하고 싶으면 원본 repository에 pull request 를 보내어 승인되면 commit, merge 되어 반영된다.

  2. git clone <복사한 자신의 원격 repository 주소>
    fork 한 자신의 원격 repository 에서 내 작업 환경 PC 를 연결하여 데이터를 복사하여 가져온다.

  3. 내 로컬 환경에서 작업 후 staging area 를 거쳐 자신의 원격 repository 로 push 하는 과정은 위의 5 ~ 7 과 같다.



📌 페어와 함께 작업하기

  1. git init 자신의 로컬 repository 를 git 관리 하에 두기 위한다.
  2. git remote add origin <자신의 remote repository 주소> 자신의 로컬 repository 와 원격 repository 를 연결시켜준다.
  3. git remote add pair <페어의 remote repository 주소>
    페어가 자신의 origin 원격 repository 에서 fork 한 페어의 원격 repository 를 자신의 로컬 repository 와 연결한다.
  4. git pull pair master/main
    자신의 commit 을 push 하기 전, 페어가 작업해서 페어의 원격 repository 에 올라온 파일을 자신의 로컬 repository 와 합친다.
  5. 작업 파일을 자신의 원격 repository 에 push 하는 것은 앞과 동일하다.




* git 기본 브랜치 master 와 main 의 차이
사실 차이는 없다. 'black lives matter' 운동으로 주인과 노예를 뜻하는 'master', 'slave'를 대체하기 위해 기본 브랜치인 master 대신 main 을 사용한다.

* 특별한 명령어
-git reset Head^ 최신 commit 취소
-git branch 브랜치명 브랜치 생성

과제 제출 확인 npx codestates-assignment-manager login

0개의 댓글