git

Git 시작하기

hamiric 2024. 10. 22. 11:41

Git 시작을 위한 준비물

  1. Git 설치

 

Git

 

git-scm.com

  2. Github 가입

 

GitHub: Let’s build from here

GitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and fea...

github.com

 

Repository 만들기

  1. Terminal 열기 ( 바탕화면 / vscode )

Git Bash
vscode Terminal

 

  2. 이름, 이메일 연동

// Github 계정 연결
git config --global user.name "user_name"
git config --global user.email "user_email"

// Git 연동정보 확인
git config --list

 

  3. Repository 생성

New repositoriy
Repository 이름, 설명, 공개여부 설정

 

 

  4. Repository 주소 생성 및 확인

내용물이 없는경우
내용물이 있는경우

 

Repository 연동

  1. git init을 통해 git 초기화

작업 파일 내에 git init

  2. 저장소 연결

// 저장소 연결 ( origin 이라는 이름으로 저장소 연결 / origin 대신 다른거 넣을수도 있음)
git remote add origin https://저장소url.git

// 전체 연결된 저장소 확인
git remote -v

저장소 연결 및 연결확인 모습

 

Git 공유

  1. 작업물 working tree 등록

// working tree에 작업물 추가
git add .

 

** 발생하는 문제 ( Window 환경)

warning: LF will be replaced by CRLF in windows/flutter/generated_plugins.cmake.
The file will have its original line endings in your working directory

>> 이 경고 메시지는 Git을 사용하여 프로젝트를 관리할 때, 줄 바꿈(Line Ending) 방식의 차이로 인해 발생하는 메시지 (Window 환경에서 주로 발생)

# 해결방법

// 자동 줄바꿈 변환 설정
git config --global core.autocrlf true

 

  2. 작업물이 working tree에 잘 있는지 확인

// working tree 확인
git status

현재 branch에 상태를 확인 / add 로 등록 및 수정된 파일들이 보인다.

 

  3. 작업물을 Commit

// 커밋 메시지는 자유롭게 입력할 수 있지만, 가급적 ‘무엇을’, ‘왜’ 했는지 알 수 있도록 작성하는 것이 좋다. 
// 팀원들 간에 ‘Commit Message Convention’을 지정해 더 효율적인 협업을 할 수도 있다.
git commit -m "커밋 메시지"

 

  4. Commit 된 것들을 Repository로 업로드

git push origin 브랜치 이름  // 브랜치 이름을 사전에 지정하지 않았으면 master

 

 

 

Fetch vs Pull

둘다 원격저장소의 내용을 가져오는데 사용. 

fetch는 가져온 변경내용을 로컬에 영향을 미치지 않으며, 병합하기전에 확인하는 용도로 사용하는 것이 좋다.  
pull은 가져온 변경내용을 로컬에 병합한다. 하지만 로컬에서 작업하다가 변경된 내용을 pull할 경우 충돌이 일어날 수 있다.
왠만해선 fetch후 pull을 로컬이 깨끗한 상태에서 사용하는게 좋다.

git fetch origin  // origin(원격저장소)의 변경사항을 확인

git pull origin main  // origin(원격저장소)의 사항을 main 에 병합

 

'git' 카테고리의 다른 글

Commit Convention  (0) 2024.11.08
Git 파일 상태관리와 브랜치 전략  (0) 2024.11.07
Git 충돌 해결하기  (0) 2024.10.24
Git 흐름 파악하기  (0) 2024.10.23
Git 버전관리_Sourcetree  (0) 2024.10.23