깃 사용법 정리

LD·2023년 12월 14일
0

설치 및 설정

windows에 git 설치:

https://git-scm.com/download/win

git bash 실행:

사용자 정보 설정:

git config --global user.name "YOUR_USER_NAME"
git config --global user.email "YOUR_GIT_EMAIL" //git 회원가입 시 사용한 이메일

설정한 정보 확인:

git config --list
  • 만약 토큰 에러 발생 시, gitHub 홈페이지에서 개인 Access 토큰을 발급받아서 인증시도

최초 저장소 생성 및 코드 업로드

최초 설정 (1회):

// bash에서 저장소로 사용할 디렉토리로 이동
git init	// 현재 디렉토리에 새로운 git 저장소 생성

.gitignore 생성:
(git에 저장하지 않는 파일. 보안등에 사용. 프로젝트 최상위 디렉터리에 생성)

echo > .gitignore	// (https://www.toptal.com/developers/gitignore 참고)
//사용 예시 : .env 파일에 환경변수, 암호화키 등을 저장하고 ignore파일에 .env 등록

ignore 처리된 유형(정보) 확인:

git status --ignored

변경사항을 Stage에 추가:

git add .

저장소 상태(변경사항) 확인:

git status

최초 commit 메시지(히스토리) 추가:

git commit -m "YOUR_COMMIT_MESSAGE"

원격저장소(gitHub) 연결:

git remote add origin git@github.com:YOUR_GIT_REPO_LINK

원격저장소 연결(상태) 확인:

git remote -v

최초 gitHub 업로드:

// master가 아니라 main 일수도 있으니 확인할 것.
git push origin master

(중요) 작업 후 지속적 관리 - 협업 또는 개인

협업 시 - 리포지터리 복사(클론):

//내 디렉토리에 gitHub repository 다운로드(클론)
git clone git@github.com:GIT_REPO_LINK YOUR_DIRECTORY_NAME(*선택)
	//YOUR_DIRECTORY_NAME가 없으면 gitHub 프로젝트 이름으로 폴더 자동생성

협업 시 - 새로운 브랜치(나만의 작업공간) 생성:

git checkout -b YOUR_BRANCH_NAME

만약, push할 때 아래와 같은 경고 메시지가 출력되면

로컬저장소에 생성한 브랜치를 원격저장소(origin)으로 반영하는 명령어 사용

git push --set-upstream origin YOUR_BRANCH_NAME

공통 - 소스코드 업로드 하기 (반복)

//변경사항을 Stage에 추가
git add YOUR_OPTION
	//YOUR_OPTION : -A 또는 .(변경된 모든파일), FILE_NAME(해당 파일만), -u(수정된 파일만(신규x))
//commit History 추가
git commit -m "COMMIT_MESSAGE"
//origin(gitHub)으로 나의 브랜치(YOUR_BRANCH_NAME)를 붙인다(업로드).
git push origin YOUR_BRANCH_NAME
	//origin(remote 명령어로 설정한 gitHub 원격저장소 주소)
    //YOUR_BRANCH_NAME : 내가 작업한 브랜치 이름. 만약, 혼자 개발한다면 master로 바로 push 해도 됨
    //(개인) YOUR_BRANCH_NAME이 master인 경우, 승인과정 없이 바로 업로드 됨.
    //(협업) YOUR_BRANCH_NAME이 master가 아닐 경우, git 홈페이지 Compare & pull request에서 확인

기타

협업 시 - 만약 내 변경사항을 push 하기 전 다른 사람의 브랜치가 merge 되었다면:
변경된 master 브랜치와 현재 브랜치 동기화 후 브랜치 합병 요청

//작업사항 저장
git commit -m "COMMIT_MESSAGE"
//최신 master 브랜치 가져오기 (pull : 원격저장소 파일을 로컬저장소와 비교하여 merge 해준다.)
git pull origin master

진행 후 변경사항 push

git push origin YOUR_BRANCH_NAME

다른 브랜치로 이동하는 방법:

git checkout BRANCH_NAME

디렉토리 명 변경, 삭제
원격저장소를 pull로 가져온다.

git pull origin YOUR_BRANCH

변경할 폴더를 mv로 바꾸어준다.

git mv BEFORE_NAME AFTER_NAME

삭제할 폴더를 rm으로 삭제한다.

git rm -r DELETE_NAME

변경사항을 커밋한다.

git add .
git commit -m "YOUR_MESSAGE"
git push origin "YOUR_BRANCH"

기본개념:
Workspace에 있던 파일들의 수정 내역을 인덱스에 staging하고, staged된 파일들을 commit까지 하고 나면 이 변경 이력은 로컬 저장소에 반영된다.
이 변경 이력들은 push로 원격 저장소(remote, GitHub)에 밀어 넣을 수 있다.
반대로 clone으로 원격 저장소에서 로컬 저장소로 다운로드(클론) 할 수도 있다.

작업한 내용을 스테이지 영역에 올린 후 로컬 저장소에 커밋하고, 이를 푸시해서 원격 저장소로 보낸다"


출처 : 코딩 시그널

  • pull request: master(최종) 브랜치에 merge 할 수 있도록 승인요청
  • 기록을 남겨야하는 중요한 브랜치를 merge할 때는 3-way merge 방식
  • 기록을 남길 필요없는 사소한 브랜치를 merge할 때는 squash, rebase 사용

참고 YouTube-코딩알려주는누나

0개의 댓글

관련 채용 정보