PangLog
PangLog_k.k
PangLog
전체 방문자
오늘
어제
  • Category (77)
    • 💾기록 (2)
      • 📔기록 (2)
    • 🔧알고리즘 (10)
    • ⚡AI (17)
      • ∃Mathematics (11)
      • AI (5)
      • 논문 (1)
    • 👨‍💻Data Science (2)
    • 📚CS (4)
      • 📡컴퓨터 네트워크 (3)
      • 💾DB (0)
      • ⚙OS (1)
    • ⌨Programming (15)
      • Python (6)
      • Pytorch (3)
      • FastAPI (0)
      • Java (1)
      • Spring (3)
      • Elastic Search (2)
    • 💻 (23)
      • Git (9)
      • Issue sol (2)
      • Linux (2)
      • etc (7)
      • Web (2)
      • Docker (1)
    • 📰칼럼 (4)
      • IT (4)
      • 그 외 (0)
    • Review (0)

블로그 메뉴

  • 홈
  • Github

인기 글

최근 글

태그

  • SWEA
  • 깃허브
  • 자바
  • 11660
  • Java
  • 백준허브 이슈
  • 알고리즘
  • 파이썬
  • 쥬피터랩
  • pycham
  • cv2
  • inference
  • cors
  • Python
  • 백준허브 에러
  • 백준허브
  • 인퍼런스
  • 5215
  • BOJ
  • URL URI 차이
  • 탐색적 데이터 분석
  • 외부단편화
  • 프로그래머스
  • 백준
  • 프로그래머스 체육복
  • 옹알이(1)
  • Jupyter Lab
  • 내부단편화
  • 파이참
  • K-디지털트레이닝 해커톤
hELLO · Designed By 정상우.
PangLog

PangLog_k.k

💻/Git

Git 2(Global configuration & 기본용어)

2022. 1. 3. 11:48

Git Global Configuration

기초설정!

  • Global User name & Email
  • 말 그대로 유저의 이름과, 이메일 등록하는 과정
git config --global user.name <username>
git config --global user.email <email>

Line ending

줄바꿈을 하거나 엔터를 하거나 하면 우리 눈에는 안보이지만 줄바꿈 문자가 들어감, 그러나 윈도우와 맥이 CRLF 차이로 인해 문제가 생길 수 있음, 따라서 윈도우 유저들은 변경해줘야함

  • Windows : CR(\r) + LF(\n)
  • Unix or Mac : LF(\n)
  • windows 사용자와 Mac 사용자가 같은 Git Repository를 작업할 때 코드에서 변경된 내용이 없어도 CRLF차이로 인해 commit이 발생할 수 있음

CRLF - Windows

  • Windows - 가져올 때는 LF를 CRLF로 변경하고 보낼 때는 CRLF를 LF로 변경
git config --global core.autocrlf true
  • 근데 Git 설치과정에서 이미 true로 체크 되어있지롱...............

Editor

  • 에디터 설정
git config --global core.editor <editor>

전체 설정 확인

git config --list

Git 기본용어

  • Repository
    • 소스코드가 저장되어 있는 여러 개의 Branch가 모여있는 디스크상의 물리적 공간
    • Local Repository와 Remote Repository로 구분
  • Checkout
    • 특정 시점이나 Branch의 소스코드로 이동하는 것을 의미
    • Checkout 대상 - Branch, Commit, Tag
    • Checkout을 통해 과거 여러 시점의 코드로 이동이 가능
  • Stage
    • 작업할 내용이 올라가는 임시저장영역
    • 이 영역을 이용하여 작업한 내용중 commit에 반영할 파일만 선별하여 commit을 수행 가능

Git에 올라가는 과정

눈에 보이는건 working directory, 파일을 선정해서 깃에서 관리하게 등록을 하면 Stage에 들어감, 수정을해서 버전을 매기게 되면 head영역에 들어감!

  • Commit
    • 버전관리역할
    • 작업할 내용을 Local Repository에 저장하는 과정
    • 각각의 commit은 의미있는 변경단위, 설명을 commit log로 남김
    • save point라고 생각하면 오께이
    • commit 단위나 commit log format을 정해놓기도 함
  • Tag
    • 임의의 commit 위치에 쉽게 찾아갈 수 있도록 붙여놓은 이정표
    • Tag가 붙은 commit은 commit id(version)대신 tag name으로 쉽게 checkout가능
    • 의미있는 버전에 붙여놓아서 언제든 확인 가능하게 하는 역할
  • Push
    • Local Repository의 내용 중 Remote Repository에 반영되지 않은 commit을 Remote Repository로 보내는 과정
    • Push하는 순간 다른 개발자들도 영향을 받기때문에 검증되지 않은 코드는 Push X
  • Pull
    • Remote Repository에 있는 내용 중, Local Repository에 반영되지 않은 내용을 가져와 Local Repository에 저장하는 과정
    • 다른 팀원이 변경하고 Push한 내용을 Local Repository에 가져올 수 있음
    • Push 과정에서 conflict가 일어나서 Push가 거절된 경우 Pull을 통해 Remote Repository의 변경 내용을 Local Repository에 반영하여 Conflict를 해결한 후 다시 Push해야함
  • Branch
    • 특정시점(commit 단위)에서 분기하여 새로운 commit을 쌓을 수 있는 가지를 만드는 것
    • 개발의 주축이 되는 branch를 master branch(혹은 main branch)라고 함
    • 모든 branch는 최종적으로 다시 master branch에 merger되는 형식으로 진행 됨
  • Merge
    • Branch의 반대개념으로 하나의 Branch를 다른 Branch와 합치는 과정
    • Merge되는 두 Branch는 주종관계가 성립.  ex) dev branch를 main branch에 merge
    • Merge되는 과정에서 충돌이 발생하면 Diff를 수정하여 Conflict를 해결한 뒤 Merge를 진행할 수 있음

 

2022.01.03 - [컴쀼따/Git] - Git1 (Git 이란?)

 

Git1 (Git 이란?)

Git1 내가 처음 Git을 접했을 때 너무 어려웠다, 처음보면 다 그러니 계속봐서 익숙해지자 ! Git 이란? 버전관리 시스템(형상관리)의 한 종류 Configuration Management Systems, Version Control Systems 버전관..

variety82p.tistory.com

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'💻 > Git' 카테고리의 다른 글

Git6 (Git Graph, Git Log)  (0) 2022.01.05
Git5 (Branch)  (0) 2022.01.05
Git4 ( Remote Repository 복제, 클론!)  (0) 2022.01.05
Git3 (Local Repository, Remote Repository)  (0) 2022.01.05
Git1 (Git 이란?)  (0) 2022.01.03
    '💻/Git' 카테고리의 다른 글
    • Git5 (Branch)
    • Git4 ( Remote Repository 복제, 클론!)
    • Git3 (Local Repository, Remote Repository)
    • Git1 (Git 이란?)
    PangLog
    PangLog

    티스토리툴바