[백업][가리사니] git 탐구 : 1. git, 기본적 용어와 역할
version-control

이 문서는 가리사니 개발자 포럼에 올렸던 글의 백업 파일입니다. 오래된 문서가 많아 현재 상황과 맞지 않을 수 있습니다.

git 탐구 시리즈

참고

이 강의 시리즈는 주로 이클립스를 중점으로 설명됩니다. (다만 이클립스가 아니어도 원리만 알고 있다면 큰 문제가 되진 않습니다.)

들어가기에 전에

  • 깃을 통해 커밋을 해본적이 있다면 "git의 구조"로 건너 뜁니다. 아직 git을 통해 커밋이나 브랜치 등을 해보지 않은 사람이라면 먼저 아래 강의를 참고해주세요. 여기까지 내용은 쉽게 찾아볼 수 있기 때문에 생략 하도록 하겠습니다.
  • 직접 git 서버 설치하기
  • 사설 git 서버 이용하기
  • 깃허브나 비트버킷등에서 계정을 만들고 리포지토리를 만든다음 아래 명령어로 초기 파일을 커밋 까지 해보시기 바랍니다. (위 직접 git 서버 설치하기 문서에 "git 설치"를 보시면 윈도우/리눅스용 git 설치방법이 나와있습니다.) (해당 문서를 보고 설치한 git을 통해 아래 명령어를 입력하시면 됩니다.)
> git clone 깃주소
- 기본적인 초기 파일들을 만듭니다.
> git add .
> git commit -m "변경메시지"
> git push --set-upstream origin master

추천 참고강의 https://backlogtool.com/git-guide/kr/

git의 구조

  • Branches
  • Local : 로컬 리포지토리
  • Remote Tracking : 원격 리포지토리로부터 자동 생성 복제되는 리포지토리 (여담으로 필자는 이 리모트가 무서워서 직접 건들지 않습니다......)
  • Tag : 히스토리에 각 태그를 부여 (주로 버전을 기록합니다.)
  • References
  • FETCH_HEAD : 마지막 피치 결과의 포인터
  • HEAD : 현재 체크아웃 커밋 포인터

각종용어

Repository : 저장소 Local Repository : 로컬 리포지토리 (로컬저장소) Upstream Repository : 상위 저장소 (원격저장소) Commit : 로컬저장소에 변경사항에 대한 이력 추가 Push : 원격저장소에 커밋 적용. Fetch : 원격저장소의 변경사항을 가져옴. Merge : 브랜치의 이력을 병합 합니다. Pull : 원격저장소의 변경사항을 가져와 지역저장소에 병합 (Fetch + Merge) Branch : 하나의 이력으로부터 분기되는 포인터 (또 하나의 단위)