2015년 1월 25일 일요일

Git 시작하기 3 - commit

목차


git commit 명령어

global 설정

추적도 되었겠다. 이제 백업만 하면 된다
그것을 해주는 명령어가 바로 git commit 이 되시겠다

일단 git commit을 쳐보자

그럼 git가 넌 누구냐 (-ㅅ- om
라고 강렬하게 물어온다

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address

그렇다. git을 사용하기 위해선 이름과 이메일을 기입해야한다
이유는 원래 git는 혼자서 가계부 만들려고 존재하는게 아니라
여러명을 대상으로 한다.
그리고 세상일이 그렇듯 여러사람이 작업하면 산으로 가는일이 많다
A가 수정하고 B가 수정하고 이러다가 어느날 갑자기 패망했을때
팀장이 길길이 날뛰며 ‘어떤 새끼가 이거 마지막에 수정했어?!?’
라고 한다면.. 사건은 미궁에 빠지고 김전일이 필요하게 된다

그래서 git는 누군가가 commit을 실행할때 반드시 그 정보를 기록한다
거기에 같은 팀이 아니라면 이름만 적어놓으면 또 찾기가 힘들다
email 주소는 그걸 위해 존재하는 것이다

근데 매번 commit때마다 그것을 적어주는 것은 너무 귀찮으므로
미리 설정파일에다가 설정해주면 일단 자기컴에선 항상 그 정보가 쓰이게된다

Run (이봐 실행해봐 라는 뜻-ㅅ-; 아래껄..)

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

잠깐 앞에의 오류메세지를 살펴보자 git가 얼마나 친절하고 착한지 알 수 있다
오류메세지뿐만 아니라 각종 status로 보거나 다른 명령어 치거나 할때마다
조언을 해준다. 문제는 영어라서 아무도 자세히 읽어보지 않는다는데 있지

저기 조대로 쳐주면 된다.

git commit -m

이제 정말 백업 준비완료
하지만 git commit만 치면 vi라는
초보자에겐 악몽과도 같은 편집기가 열린다

commit 했을때 백업이 되는데.. 백업할때 파일 이름 안짓고
백업하는 사람은 없을것이다
그것과 마찬가지로 메세지를 적어준다. 단, 파일 이름 적을때보다
훨씬 자세하고 알기 쉽게 적을 수 있는데
그런걸 하라고
git가 지딴엔 친절하게 메모장 같은 걸 열어주는 것이다
하지만 오지랖이 넓으면 오지랖퍼가 되는 법!
이 vi라는 편집기가 git보다 더 어렵다 (익히면 좋긴하다..)

그래서 우리는 어차피 쓸것도 그닥 없으니까

git commit -m “시작함다”

라고 해보자. -m은 message의 약자다.
물론 빼기 하나 더 붙여서 --message 하고 싶으면 해도된다
그리고 뒤의 "따옴표 안의 것이 자신이 백업할때 적고 싶은 정보다

이제 git status를 다시 쳐보면 아무것도 안나올 것이다
그 말은 현재 백업버전이 최신이라 아무것도 백업할 필요가 없다는 것을 의미한다

git add의 비밀과 git의 3단계 시스템

자 이번엔 AV list 파일에 파란 하늘을 새로 기입하였다
파일을 저장하면 파일이 변경되었음을 알려준다

git커밋

오호라~ 잘 추적하는구나
하면서 git commit -m "하늘이 푸르구나" 로 다시 백업을 시도한다
근데..

위랑 거의 동일한 메세지가 나오며 백업이 전혀 작동하지 않는다

그 이유는 git 시작하기 1에서 나왔던 add 명령어가
가진 출생의 비밀때문이다

얘가 사실은 추적에 등록하는 것 외에 또하나의 역할이 있는데
그것은 commit시 백업될 애들을 명단에 추가하는 것이다
무슨 명단?
그것을 알려면 이전에 잠깐 언급한 3단계 시스템을 이해해야한다
쉽게 말하면

일반인-> 오디션 -> 연예인
작업디렉토리 -> stage area(index) -> Head (committed)

이렇게 보면 된다-ㅅ-;;;
연예인이 될려면 일반인에서 일단 오디션에 뽑혀야한다
마찬가지로 백업이 될려면 일단 백업할 명단에 추가해야만 한다

왜 그냥 백업하지 않고 한단계 더 단계를 추가했을까?

그 이유는 여러가지가 있지만 일단 지금은 편리성과
좀더 정리된 commit을 위한 장치.. 라고 정도만 알고 있자

실제로 지금은 몰라도 전혀 상관없다
또한 우린 그것을 건너뛸 예정이다.

git commit -am

위의 3단계 때문에 우린 비록 추적하고 있는 파일이라고 해도
git add를 해주지 않으면 그 파일을 백업할 수가 없다

그럼 매번 git addgit commit 해야하나

그런 것을 쉽게 하기위해 우린 또 옵션을 사용할 수 있다
바로
git commit -a -m "설명"
-a 옵션이다
이 옵션을 추가하면 add 필요없이 무조건 수정한 모든 파일을
commit 해준다

이제는 그냥 수정후 백업하고 싶을때
저 명령어로 한번에 해결할 수 있을 것이다
저걸 더욱 쉽게 할려면
git commit -am "설명"
처럼 아예 연속적으로 붙여버릴 수도 있다.

다음편은 백업을 했으니 일이 잘못되었을때 복구할 방법을 보겠다

Written with StackEdit.

Related Posts:

  • 2FA와 OTP의 원리목차 2FA (Two-Factor Authentication) OTP OTP 원리 2FA (Two-Factor Authentication) 2FA는 이중인증이라고 불린다. 곧 소개할 OTP 처럼 코인계에선 무조건 필수이다. 정작 스팀 사이트에선 지원하지 않는게 엄청난 에러긴한데 그 대체로써 마스터 패스워드를 컴퓨터와 완전 분리해두는 방법이 있긴하니 숙지해두자. 여튼 … Read More
  • 비트코인(블록체인) 초보 입문 - 비트코인의 개념목차 돈이란 무엇인가 가상화폐 비트코인의 등장 돈이란 무엇인가 돈이 가치를 지니는 것은 뒤에 누군가가 중재해주기 때문이다. 카지노의 칩을 생각해보라 이런 장난감이 가치를 지닐 수 있는건 해당 카지노가 보증을 서주기 때문이다. 마찬가지로 현실의 돈은 각각의 국가가 보증을 서줌으로써 가치를 지닌다. 만약 전쟁이라도 일어나면 해당 국가의 지폐가치가 확 떨어지는 것은… Read More
  • 코딩교육에 대한 기대감목차 코딩교육 2박 3일 54만원짜리.. 코딩교육 내년부터 코딩 교육이 의무교육이 됩니다. 코딩은 다른 공부에 비해 결과를 직접 바로바로 볼 수 있으므로 굉장히 재밌고 그러한 재미를 통해서 논리적 사고를 쌓는데 최고의 도구라고 할 수 있죠 ��내 아이 ‘코포자’ 안돼 - 네이버기사 그렇지만 이좋은 교육도 한국패치를 당하고 나면 이렇게 되어버립니다. 그… Read More
  • 컴퓨터와 프로그래밍의 개념원리목차 반도체 아날로그와 디지털 프로그래밍은.. 컴퓨터와 프로그래밍은 긴밀하게 묶여있지만 그것이 어떻게 묶여있는지는 잘모르는 사람이 많다. 원래부터 흥미가 있었던 사람이나 전공에서 일정부분 진행하지 않는 이상 그 실체가 드러나지않기 때문이기도 하지만 근본적으론 한국교육 방식이 글러먹었기 때문이다 왜 그런가로 흥미 유발을 하고 그것을 해결해나가게 한후 그 이후에 더 쉽게 해결… Read More
  • 이오스 다이스(주사위) 토큰 BET의 전망목차 이오스 주사위 흥하다 어떤 게임이길래 왜 인기가 있는가 BET 토큰 리스크와 기대 마치며 (추가) 10월 20일 현재 상황 이오스 주사위 흥하다 eosbetdice11 라는 계정에서 시작한 간단한 앱인 이오스 다이스는 이더롤이라는 게임을 모델로 시작한 아류작이었습니다만.. https://eosflare.io/account/eosbetdice11 오픈한지 고작 일주… Read More

댓글 3개 :

  1. 깃 시작하기 다음 글은 언제 나오나요? 설명이 정말 잼있어서 이해도 잘되고 제가 잘 배워서 후배들에게도 잘 가르쳐 줄 수 있을 거 같습니다. 정말 글 잘보고 있습니다^^

    답글삭제
    답글
    1. 감사합니다. 게을러터져서 1년반동안 방치해놨었는데 5-6편까진 갈 수 있도록 써보겠습니다. 물론 기약은 없습니다-ㅅ-;

      삭제
    2. 감사합니다. 게을러터져서 1년반동안 방치해놨었는데 5-6편까진 갈 수 있도록 써보겠습니다. 물론 기약은 없습니다-ㅅ-;

      삭제