Git - 기본 명령어

박종휘·2022년 8월 10일
0

Git & Github

목록 보기
2/5
post-thumbnail

👨‍💻 Git 명령어

  • pwd : 현재 나의 디렉토리 경로
  • cd [ 이동경로 (ex) c) ]: : 이동경로로 이동
    → ex) cd c: ▶ C 드라이버로 이동
  • ls : 현재 경로의 폴더 리스트 조회
  • ls -al : 현재 경로의 폴더 리스트 상세 조회 (날짜, 숨은 폴더 등등)
  • clear : 화면 깨끗하게 보기 (이전 명령어 삭제 but 초기화 X)
    → 다른 커멘드에서는 스크롤 변경

  • cd [폴더 이름 일부분] + tab 키 : 이름 일부분에 부합하는 폴더들이 자동완성 된다.
    ✅ 다수로 있을 때
    ✅ 한 개만 있을 때

  • mkdir [폴더 이름] : 폴더 생성
  • rm -rf [폴더 이름] : 폴더 삭제
  • rm -r [파일 이름] : 파일 삭제

( * 위아래 방향키를 누르면 이전 명령어를 재사용할 수 있다. )

  • git init : 현재 디렉토리를 git의 저장소로 사용
  • vim [파일 이름] : (편집기) 해당 파일 편집, 해당 파일이 없을 때는 새로 생성
    • i : 입력이 가능한 상태
    • esc : insert 상태를 빠져나온다.
    • :wq : 저장 후 종료
    • :q : 종료
    • :q! : 강제 종료

  • cat [파일 이름] : 파일 내용을 확인할 수 있다.
  • git status : git 프로젝트 폴더의 상태를 확인
  • git add [파일 이름] : git 대상 파일 add
  • git add . : 현재 디렉토리의 모든 변경 내용을 스테이징 영역으로 넘기고 싶을 때는, .을 인자로 넘김
  • git add -A : 작업 디렉토리 내의 모든 변경 내용을 몽땅 스테이징 영역으로 넘기고 싶을 때는, -A 옵션을 사용

git add -A는 작업 디렉토리 상에 어디에 위치하든 항상 동일하게 모든 변경 내용을 스테이징으로 넘긴다. 반면에 git add .는 명령어를 실행한 디렉토리 이하에서 발생한 변경 내용만 포함하며, 해당 디렉토리 기준으로 상위 디렉토리의 변경 내용을 포함하지 않는다. 만약에 git add .를 프로젝트 최상위 디렉토리에서 실행한다면 git add -A와 동일한 효과를 낼 것이다.

  • git add -p

    • 각 변경 사항을 터미널에서 직접 눈으로 하나씩 확인하면서 스테이징 영역으로 넘기거나 또는 제외 가능
    • 많은 변경 내용을 여러 개의 변경 기록으로 나누어서 남기고 싶을 때 유용하게 사용 가능
  • git config --global user.name [닉네임]

  • git config --global user.email [이메일 주소]
    : 누구의 작업물인지 알 수 있다. 1번만 해주면 된다.
    (메일은 GitHub 가입할 때 사용한 이메일을 적고 명령어를 실행시킨다.)

  • git commit -m '[메시지 내용]'
    : 작업물 commit
    [commit : 코드 변화를 기록하는 것]

  • git log : git log 확인

  • cd ../ : 상위 레파지토리로 이동

  • exit : git bash 종료

    			                        {git config}
          
          		git config --list : 설정한 정보 확인 가능 (사용자 정보)
                git config --unset user.name / user.email : 설정된 정보 삭제하기
                git config --unset --global user.name / user.email 
                : 삭제해도 정보가 남아있다면? 
                  → global로 설정된 config 사용자를 지울 경우에는 global을 추가한다.
        * 사용자 변경 : 그대로 git config --global user.name / user.email 을 사용한다.
        
        -----------------------------------------------------------------------------
        
        --global 옵션은 현재 시스템에서 기본값으로 사용자 설정할 때 쓰는 옵션이다.
        ( ❗❗ --global 옵션으로 설정하는 것은 딱 한 번만 하면 된다. )
        
        만약 프로젝트마다 다른 이름과 이메일 주소를 사용하고 싶으면 
        --global 옵션을 빼고 명령어를 실행시키면 된다.
  • git config --list
    🎨 사진 출처 ( EnSSo, "Git Config 설정 확인 및 변경하기", 2021년 10월 18일, https://webisfree.com/2018-07-26/git-config-%EC%84%A4%EC%A0%95-%ED%99%95%EC%9D%B8-%EB%B0%8F-%EB%B3%80%EA%B2%BD%ED%95%98%EA%B8%B0 )


  • git log -p : 로그에서 출력되는 버전 간의 차이점을 출력하고 싶을 때

    	- 가장 최근 글이 제일 상단에 올라온다.
        commit bb4d77 ~~ : 가장 최근에 커밋한 로그 파일
        
        a/test.txt : 이전 버전
        b/test.txt : 현재 버전
        
        test file
        update file
        2 update
        → 기존에 있었던 소스 코드
        
        +3 update
        → 새롭게 추가가 되었다.

	commit f8e21b1c ~~ : 가장 처음에 커밋했던 로그 파일
    
    1 commit : 첫 번째 커밋
    /dev/null : 최초에는 아무내용이 없었다.
    b/test.txt : 새롭게 생성
    
    +test file : 생성된 파일의 소스코드

( => git log -p 빠져나오기 : esc -> q )

  • git log [id값] : id값 포함 이전의 log만 보여진다.
    ▶ ( 파란색 박스가 id다. )

  • git diff [id값]..[id값] : 두 id값의 차이점을 파악
  • git diff : 방금 수정된 기능에 대해서 어떤 작업을 했는지 확인 할 수 있다.
  • git commit -am '[msg내용]' : add와 commit을 한 번에
  • git commit --help : git commit에 대한 manual page로 이동 (사용 설명서)
    ( * 경로로도 확인할 수 있다. )

✔ Git 상태 값

  • untracked : git이 해당 파일을 추적 및 관리하지 않는 상태
  • tracked : git이 해당 파일을 추적 및 관리하는 상태

📚 Reference

profile
개린이의 개발 고수되기 작전!

0개의 댓글