Git & Github 복습하기 (1)

JaeYeong·2023년 11월 29일

1. 왜 사용할까?

git

작업 폴더에서 코드의 변경점을 기록하려고 사용한다.
어떤 시점에 어떤 것을 개발했는지 기록하며
있어보이는 표현으로 좀 바꿔보면
'소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것' 으로 바꿔볼 수 있음

github

요즘이야 컴퓨터가 갑자기 꺼져도 작업한 내용들이 남아있는 경우가 많지만 예전에는 통째로 날아가버리는 경우도 많았다.
그리고 갑자기 작업하는 컴퓨터가 고장이라도 난다면 끔찍하다.
그래서 요즘은 구글 드라이브 같은 클라우드에 파일들을 저장해두는 경우도 많은데, github가 그런 역할을 해준다고 생각하면 편하다.
백업과 공유가 가능한 온라인 코드 저장소라고 생각하면 됨

2.몇 가지 명령어

git init

코드 관리를 이 폴더에서 시작한다는 의미이다.
프로젝트 시작 전 딱 한번만 입력하면 된다. 여러 번 입력한다고 문제가 생기는 건 아니지만 굳이 그럴 이유가?
제일 중요한 건 자기가 작업할 폴더에서 명령어를 입력해야 한다는 것! git init를 입력하기 전에 콘솔창에 pwd를 입력해서 경로를 확인해보자.
git init의 의미를 더 정확히 하면 .git이라는 폴더를 현재 디렉토리 안에 생성하는 것이다. 콘솔 명령어인 ls -a 로 .git 폴더가 있는지 확인해볼 수 있을듯?
.git 폴더의 역할은 .git 폴더의 상위 폴더에서 바뀐 내용들을 추적하여 기록해 주는 것이다.
그러니까 작업하지 않을 폴더에서 git init를 입력하면 안됨

git add & git commit

git add

git add는 저장한 파일을 지정한다고 생각하면 편하다. 사용법은

git add 파일이름

을 입력해주면 됨. 아래는 예시

git add index.html

git add .
을 입력하면 해당 디렉토리에 있는 모든 파일을 대상으로 한다. 아래는 예시

git add .

띄어쓰기 안해서 명령어가 안먹는 경우가 종종 있다. 띄어쓰기 잘하기!

git commit -m

git commit는 지정된 파일을 직접 저장한다고 생각하면 된다. 사용법은

git commit -m "적고싶은말"
을 입력해주면 됨. 아래는 예시

git commit -m "포스팅박스 디자인 변경"

git add와 git commit의 개념

그런데 왜 저장하는 명령어를 두개로 쪼개놨을까?
이걸 이해하려면 다음 그림을 이해해보자.

출처 : https://iseunghan.tistory.com/322

내가 작업하는 프로젝트의 Working Directory에 있는 파일들을 Staging Area로 옯겨놓는 명령어가 git add 이고, Staging Area에 있는 파일을 Repository로 옮기는 명령어가 git commit인 것이다.

이런 구조로 되어있는 건 알겠는데, 귀찮게 Staging Area를 왜 만들었냐는 생각을 할 수 있을 것 같다. 아래 포스팅에 이유가 설명되어 있는데 한번 더 읽어봐야 할듯.
https://blog.npcode.com/2012/10/23/git%EC%9D%98-staging-area%EB%8A%94-%EC%96%B4%EB%96%A4-%EC%A0%90%EC%9D%B4-%EC%9C%A0%EC%9A%A9%ED%95%9C%EA%B0%80/

git commit -m 띄어쓰기도 제대로 했는데 왜 에러 메시지가?

분명 제대로 입력했는데 "please tell me who you are" 이라는 메시지가 뜬다.
너가 누군지 모르겠으니까 좀 알려주라는 건데. 다음 명령어를 입력해주면 된다.
git config --global user.email “사용자 이메일”
git config --global user.name “사용자 이름”
아래는 예시

git config --global user.email "asdf5678@gmail.com"
git config --global user.name "홍길동"

github 계정과 맞춰야 좋다는 말도 있는 것 같은데, 큰 상관은 없다고 한다.

0개의 댓글