상세 컨텐츠

본문 제목

[GIT&GITHUB] GIT | 작업 영역 | add & commit | checkout |

IT/GIT&GITHUB

by o_zeew 2022. 7. 13. 15:11

본문

(수정중)

(1) Git

     - Git

     - Git 설치

     - Git add & commit

     - Git checkout


 Git 

  - 리눅스 커널 때문에 생성됨, 커널 버전에 대한 형상 관리를 하기 위해 생성
  - 로컬에 저장하면 협업이 힘들기 때문에 원격지에 저장하기 위해 사용

     1.Local Repository
        1.1. GIT
     2. Remote Repository 
        2.1. GIT HUB

  - 형상관리 : 소스코드 관리. 문서관리라고 생각(개발하는 코드도 문서의 종류), 문서에 버전을 붙여 차이점 분리
  - 버전관리 : 변화가 있을 때마다 관리 해주는 것

  - Git의 작업 영역 3가지

     - working tree : 추적 불가

     - staging area : working tree에서 git add 명령어로, 이때부터 추적 가능,
                             임시 저장 상태 = 작업내용이 메모리에 있는 상태, 폴더 전체를 옮기고 싶을 때는 폴더명 입력
     - Local Repository : commit 후 상황

 


<Git 설치>

https://git-scm.com/

 

Git

 

git-scm.com

위 사이트에서 설치

 

 

git-scm.com 접속 후 Download for Windows
64-bit 클릭
git과 github 연동을 위해 main으로 설정 권장
MinTTY 사용시 별도의 CMD 창으로 사용 가능
설치 완료
git 실행

 


 

<Git 사용해보기>

1. 디렉토리 생성

git 디렉토리 생성
git을 사용할 디렉토리 생성

 

2. 초기화 진행

  - git를 local repository로 사용하기 위해 초기화 필수
  - .git 디렉토리를 삭제 시 git 사용 불가

초기화 후 .git 디렉토리 확인 가능
.git 디렉토리에 config 파일 확인
config 파일

 

3. 파일 생성

main에 trip.txt 파일 생성 = working tree
내용 작성

 

  - git status로 확인 시 글자가 빨간색 = working tree

working tree에 존재하는 trip.txt

 

4. staging area로 올리기

  - staging area부터 추적 가능

  - 버전관리를 하기 싫다면 staging 영역으로 보내지 않으면 됨

  - git status로 확인 시 글자가 초록색 = staging area

git add로 trip.txt 파일을 staging area로 이동

 

  - repository를 사용하기 위해 최초에 전역 설정 필요

전역 설정을 해주지 않고 commit시 전역 설정 요구 창 출력

 

5. 전역 설정

전역 설정

 

6. commit

- commit에서는 메시지를 사용해주지 않으면 메시지를 입력하라는 창이 나옴 → 여러메시지를 추가할 때 사용

git commit으로 메모리에 있는 파일을 repository에 올리기
git status로 확인 시 존재 X

 

  - git log : commit 확인 시 

commit 확인

 

7. 내용 추가 후 commit

trip.txt 파일에 내용 추가
working area에 modified된 파일 존재
git add 후 staging area에 modified된 파일 존재
git commit 후 확인

 

8. git log --stat

trip.txt 파일에 내용 추가

 

  - git log --stat 옵션 사용 시 변화 확인 가능

1 file changed, 1 insertion = 1줄이 추가 삽입 됨

 

  - [git commit -am(add + message) "메시지"] : add와 commit을 한번에

                                                                           → 해당 파일이 이전에 한번은 반드시 commit이 되었어야함

step_jeju를 한번에 add & commit 후 확인

 

  - [git log] : commit 내용만 출력
  - [git log -p] : commit한 버전끼리의 차이점 출력

-1,2 +1,3 : 이전 파일은 2줄이었지만 이후 파일은 3줄

 

9. 내용 삭제 후 commit

trip.txt의 3번 내용 삭제
trip1.txt 파일 생성
tipr1.txt 파일 내용 작성
working tree에 있는 trip.txt, trip1.txt 파일 확인
trip.txt, trip1.txt 파일 모두 staging area에 올리기
step4_jeju_newyork으로 commit
working tree와 staging area에 파일 존재 X
trip.txt 파일에 내용 삭제, trip1.txt 파일에 내용 추가 확인 가능

 

10. git checkout

  - [git checkout 버전] : 특정 버전 파일로 돌아갈 수 있음
  - [git checkout main] : 현재(main)으로 복귀 가능(head를 main으로 맞춰주기)

git checkout을 통해 trip.txt 파일의 내용 삭제 이전의 commit ID로 이동
git log -p로 확인 시 내용 추가 시점 확인 가능
trip.txt 파일 내용 확인
main으로 이동 =&nbsp; 현재 시점으로 이동
trip.txt 파일의 내용이 삭제된 시점 확인
최초의 commit ID를 사용해 checkout
trip.txt 파일의 초기 내용 확인

 

관련글 더보기