ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Git 공부
    카테고리 없음 2021. 9. 13. 18:11

    <Git>

    Git: 공동으로 프로그래밍 작업할 때 사용. 어떤 버전부터 버그가 생겼는지 확인하기 쉽다. 

     

     

    <Git 사용법> 

    - git clone origin_url : 이미 있는 repository를 내 컴퓨터에 다운로드  

    - git init : 새로운 repositoty를 내 컴퓨터에 생성 

    - git add . : 변경된 파일 모두를 commit 할 준비(. 대신 파일명을 쓰면 해당 내용만)

    - git commit -m " 메시지" : 내 컴퓨터에 변경 내용을 commit 

    - git status : 변경 상태 확인

    - git pull : 변경 사항 다운로드 

    - git push origin new_branch : 새로운 branch에 push하기

    - git branch : 현재 가지고 있는 branch 목록 + 현재 어디 branch에 있는지 (처음에는 당연히 main)

    - git branch new_branch : 새로운 branch 만들기

    - git checkout new_branch : 새로운 branch로 이동 

    - git reset : 새로만든 파일은 삭제되고 지웠던 파일은 복구된다. 

    - git stash: 변경사항을 임시로 저장할 수 있도록 도와주는 기능 

     

    <처음 git을 시작할때는?>

    git clone <주소>이 이나 git init을 통해 repository(.git) 생성 후, 

    git remote add orgin <주소>

    git add . 

    git commit -m "내용 메시지"

    git push origin <브랜치명> 

     

    <내가 파일 수정하고 나서 나의 branch에 올릴 때>  

    git pull origin main : main에 저장되어있는 다른 분이 한 작업 update 

    git branch : 로 내가 어디 있는지 확인

      - git checkout -b <브랜치명> : 새로운 <브랜치명>을 만들고, 이동.

    git status : 어떤것이 변경되었는지 확인   
    git add .
    git commit -m '변경사항 메시지'
    git push origin <브랜치명> : 나의 branch에 넣기 

    이제 github page로 가서 나의 branch에 있는 최신 자료를 PR(pull request)

    reviews와 assignees를 지정하고 승인받으면 squarsh Merge ㄲ

     

    <git commit message guide>

    feat: 새로운 기능을 추가하거나 기존의 기능을 요구 사항 변경으로 변경한 경우 

    fix: 기능상 버그를 픽스했을 경우

    docs: 직접적인 코드 변화 없이 주석만 추가했을 경우 

    refactor: 기능의 변화가 아닌 코드만 리펙토링 했을 경우 

    test: 테스트 코드를 별도로 추가했을 경우 

    chore: 다른 자잘자잘한 것들

     

    <git pull을 하는데 already up to date라고 pull이 안된다면?>

    git fetch --all 

    git reset --hard origin/main 

    후 다시 pull을 시도해보자 

    단, 내가 쓴 코드들은 다 날라간다. 

     

    <git pull origin main 이 error 가 발생하면?>

    - git stash (현재 내 code들을 임시 저장 한다)

    - git pull origin main (main에 있는 것을 받고,)

    - git stash pop (다시 내 것과 합친다.)

     

    git stash를 사용할 때는? => 내가 브렌치 B로 작업을 하던 도중, 브렌치 A의 작업을 변경할 일이 있을 때??

     

    <git log>

    git log: 커밋 히스토리를 시간순으로 보여준다. 

    나가는법: Q

    git log --patch -2: 최근 두개의 커밋 diff 결과를 보여준다. 

    git log HEAD~1: HEAD에서 첫번째 떨어진 부모부터 보여준다. 

     

     

Designed by Tistory.