ABOUT ME

주니어 개발자

Today
Yesterday
Total
  • [Git] Git 간단 사용법
    Git 2022. 7. 20. 17:20

    ✅ Git Bash 실행

    Git Bash를 실행하면

     

    터미널 창이 실행되는데, Git Bash는 윈도우에서 Shell의 기능을 사용할 수 있게 해 준다.

     

    
      
    JM[사용자 이름] @ JM[컴퓨터이름] MINGW64[Bash 이름] ~[현재 디렉토리 위치]
    $

    로 생각하면 된다.


    ✅ Bash 명령어

    pwd

     

    현재 디렉토리의 위치를 나타낸다.

     

    
      
    JM@JM MINGW64 ~
    $ pwd
    /c/Users/JM

     

    cd [경로]

     

    해당 경로로 이동한다.

     

    1. 하위 디렉토리

    
      
    JM@JM MINGW64 ~
    $ pwd
    /c/Users/JM
    JM@JM MINGW64 ~
    $ cd Desktop // 하위 디렉토리로 이동
    JM@JM MINGW64 ~/Desktop
    $ pwd
    /c/Users/JM/Desktop

     

    2. 상위 디렉토리

    
      
    JM@JM MINGW64 ~/Desktop
    $ pwd
    /c/Users/JM/Desktop
    JM@JM MINGW64 ~/Desktop
    $ cd .. // 상위 디렉토리로 이동
    JM@JM MINGW64 ~
    $ pwd
    /c/Users/JM

     

    Bash에서 .. 는 상위 디렉토리를 읨하고 . 은 현재 디렉토리를 의미한다.

     

    3. 절대 경로 이동

    
      
    JM@JM MINGW64 ~
    $ pwd
    /c/Users/JM
    JM@JM MINGW64 ~
    $ cd /c // 절대경로 /c로 이동
    JM@JM MINGW64 /c
    $ pwd
    /c

     

    mkdir [폴더명]

     

    현재 디렉토리에 [폴더명]의 폴더를 생성한다.

    
      
    JM@JM MINGW64 /c
    $ mkdir study // 현재 디렉토리에 study 폴더 생성
    JM@JM MINGW64 /c
    $ cd study/
    JM@JM MINGW64 /c/study
    $ pwd
    /c/study

    study 폴더가 생성되어 study 폴더로 이동할 수 있다.

     

    touch [파일명]

     

    [파일명]의 빈 파일을 생성한다.

    
      
    JM@JM MINGW64 /c/study
    $ touch first.txt

     

    rm [파일명]

     

    [파일명]의 파일을 삭제한다.

     

     

    ls

     

    현재 디렉토리에 있는 파일 및 폴더를 보여준다.

     

    
      
    JM@JM MINGW64 /c/study
    $ ls
    first.txt

    ls 에는 다양한 옵션이 붙을 수 있다.

     

    • ls -l : 파일의 자세한 내용을 보여준다.
    • ls -a : 숨겨진 파일 및 디렉토리를 포함하여 모두 보여준다.
    • ls -S : 파일을 크기순으로 정렬하여 보여준다.
    • ls -r : 파일을 역순으로 출력한다. 
    • ls -R : 하위 디렉토리까지 출력한다.

    주로 ls -al을 많이 사용한다.

    
      
    JM@JM MINGW64 /c/study
    $ ls -al
    total 8
    drwxr-xr-x 1 JM 197121 0 Jul 20 16:44 ./
    drwxr-xr-x 1 JM 197121 0 Jul 20 16:42 ../
    -rw-r--r-- 1 JM 197121 0 Jul 20 16:44 first.txt

    그 외에도 많은 옵션이 있다.

     

    clear

     

    Shell의 내용을 모두 지운다.

     

    history

     

    입력했던 명령어들을 순서대로 출력한다.

    
      
    JM@JM MINGW64 /c/study
    $ history
    1 pwd
    2 cd /c/study
    3 ls
    4 ls -al
    .
    .
    .

    ✅ Git 사용법

     

    1. 사용자 등록

     

    사용하기 전 우선 사용자 등록을 한다. Git을 사용하려면 user.name과 user.email이 등록되어야 한다.

     

    
      
    $ git config --global user.email "[이메일주소]"
    
      
    $ git config --global user.name "[이름]"

     

    
      
    $ git config --list

     

    위의 명령어를 통해 잘 등록되었는지 확인한다.

     

    2. Git 저장소 생성

     

    
      
    $ git init

     

    git init 명령어로 해당 폴더를 저장소로 만든다.

    경로 옆 (master)가 생기는데 현재 master Branch를 사용하고 있다는 의미이다.

     

    .git 폴더가 생성되었는데 해당 폴더가 git 저장소인 경우 해당 폴더가 있다. 건들지 않는다.

     

    3. Commit

     

    
      
    $ git add [대상파일]

     

    git add 명령어를 통해 commit을 등록할 파일을 add 한다. 파일명에 . 를 입력하면 해당 폴더의 하위 파일을 모두 선택한다.

     

    
      
    $ git commit -m "[메세지내용]"

     

    Save point를 남기기 위해 commit 한다. [메시지 내용] 부분에 Commit에 대한 정보를 적는다.

     

     

    
      
    $ git log --oneline

     

    Commit 내역을 한 줄로 보여준다.

    앞의 bb78a56은 commit ID이다. 

     

    4. Commit 되돌리기

     

    다른 파일을 생성하여 새로운 commit을 등록해본다.

    그럼 2번째 commit이 나오는데 그 commit ID는 6ee3771이다.

     

    원하는 commit 시점으로 되돌아 가보자. 

     

    첫 번째 commit ID를 활용해 그 시점으로 되돌려 보았다.

     

    second.txt 가 사라진 것을 확인할 수 있다. 

     

    
      
    $ git reset --hard [commit ID]

     

    reset에도 여러 가지 옵션이 있는데 --hard 옵션의 경우 commit ID의 시점으로 완전히 되돌려서 파일도 같이 삭제된다.

    --soft의 경우 commit을 취소하고 파일은 삭제되지 않는다.

     

    한 번 확인해보자.

     

    위의 사진과 같이 second commit의 commit 내역은 사라졌지만 second.txt 파일은 사라지지 않은 것을 볼 수 있다.

     

    이 외에도 다양한 bash 명령어들이 있다.


    참고 : https://www.a-mean-blog.com/ko/blog

    'Git' 카테고리의 다른 글

    [Git] Git Branch 활용하기  (2) 2025.02.24
    [Git] GitHub 연동  (0) 2022.07.20
    [Git] Git 설치  (0) 2022.07.20
    [Git] Git이란?  (0) 2022.07.20
    [Git] GitHub 학생 인증하기  (0) 2022.07.20
Designed by Tistory.