[git & github] git 시작하기

RedPanda·2022년 9월 11일
0

Git & GitHub

목록 보기
1/1

git이란?

git은 많은 개발자들이 사용하는 버전 관리 시스템 중의 하나이다.

프로젝트를 계속 수정함에 있어서 수정하기 이전의 버전을 관리하는 일은 중요하다. 가령, 잘못된 수정으로 이전에 작업하던 환경으로 되돌려야 하는데 버전 관리가 되어있지 않다면 상당히 어려운 작업이 될 것이다. git은 이러한 기능을 지원해주는 편리한 시스템이다.

몇번 사용은 해보았지만 제대로 익히지 못했기 때문에 이번 기회에 제대로 공부해보고자 한다. 참고로 본인의 필기노트로 사용할 것이기 때문에 설명이 부실할 수 있다.

git 설치하기

https://git-scm.com/downloads
깃 설치는 이곳에서 하지만 나는 mac이므로 brew를 사용하여 설치하였다.

brew install git // 터미널에서 brew로 설치

git -v // 설치 후 버전 확인

git 시작하기

버전 관리를 할 디렉토리에서 git을 시작해보자.
cd로 위치를 바꿔준 후에 git init으로 해당 디렉토리를 다뤄보도록 한다.

$ cd documents/git-test    // Users/Documents/git-test
git-test$ git init         // 현재 디렉토리에 .git 생성
ls -la                     // 현재 디렉토리의 파일들 확인

add 해보기

해당 디렉토리에서 파일을 수정하거나 추가하면 add로 버전을 업데이트할 준비를 한다.
add를 하면 stage area에 수정한 파일이 추가된다.

단, add를 한다고 바로 저장소에 올라가는 것이 아니다. 이는 수정할 "준비"를 하는 것이다.

git status             // 파일을 수정한 뒤에 상태 확인

현재 브랜치 master
커밋하도록 정하지 않은 변경 사항:
  (무엇을 커밋할지 바꾸려면 "git add <파일>..."을 사용하십시오)
  (use "git restore <file>..." to discard changes in working directory)
	수정함:        f1.txt

git add f1.txt         // 파일 add하기
git status             // 현재 디렉토리의 git 상태 확인

현재 브랜치 master
커밋할 변경 사항:
  (use "git restore --staged <file>..." to unstage)
	수정함:        f1.txt

commit 해보기

stage area 위에 있는 파일들은 버전이 될 수 없으므로 repository에 해당 파일들을 추가해야 한다.
이러한 작업을 수행하기 위해서는 commit이라는 작업을 수행해야 한다.

commit을 수행하면 해당 디렉토리의 repository에 파일들이 추가된다.
추가된 파일들은 log에서 확인할 수 있다.

git commit       // add된 파일들에 대한 내용을 커밋한다.
-> comment를 적을 수 있으며, i로 수정, esc로 완료할 수 있다.
-> 수정이 끝나면 :q를 입력하여 나간다.

git log         // commit한 history를 가져온다. (comment만 확인)
git log -p      // commit에 대한 세부 내용에 대해 확인 가능하다.(내부 수정 내용 확인 가능)

+) git commit -am 'message'는 editer를 띄우지 않고 바로 commit할 수 있는 기능이다.

commit의 고유키로 비교하기

각 commit은 고유의 key 값이 있다. git log -p를 확인해보면 commit의 key를 확인할 수 있다. (ex. commit dbfc015dbdf5a74b8e8194ea0636acc80xxxxxx)

이 키들을 사용하여 commit 사이의 수정된 부분에 대해 비교할 수 있다.

git diff (비교할 commit의 key)..(비교를 시작할 commit의 key)

터미널 명령어

  • vim fimename // 파일 내용 수정
    -> :wq // 수정 내용 저장 및 vim 종료
    -> :q // 저장하지 않고 vim 종료
  • cat filename // 파일 내용 확인
  • mkdir foldername // 폴더 생성
  • cp lastfime newfile // 파일 복사
profile
끄적끄적 코딩일기

0개의 댓글