- 프로그램 다운로드: https://git-scm.com/
64-bit Git for Windows Setup.설치
윈도우+R:CMD입력
git --version- 출력창 확인
- 윈도우, 맥, 리눅스의 명령창을 통일하기 위함.
- 관리도구 선택 > 설정메뉴 선택
- 설정화면에서 >
default:Windows입력 Git Bash선택- 설정화면 닫고, VSCode 재실행 추천
- 터미널 실행:
Ctrl + 백틱추천 - git 버전 확인
git --version- 기본 브랜치명을
main으로 설정
git config --global init.defaultBranch main- 윈도우, 맥, 리눅스 환경에서 Enter 키 처리를 통일함.
git config --global core.autocrlf true- git commit 명령을 VSCode에서 작성하도록 설정
git config --global core.deitor "code --wait"- Git 사용자 아이디 설정하기
git config --global user.name "아이디"- Git 사용자 아이디 확인하기
git config --global user.name- Git 사용자 이메일 저장하기
git config --global user.email "이메일"- Git 사용자 이메일 확인하기
git config --global user.emailgit initgit status- 원하는 파일만 저장하기
git add README.md- 모든 파일 및 폴더 저장하기(추천)
git add .- 한줄 메모 남기기
git commit -m "깃 작업 관련 설명글 작성"- 여러줄 메모 남기기
git commit[커밋타입](옵션): 커밋 메시지- 커밋타입: 작업의 분류
- 옵션: 이슈 또는 수정이 된 작업커밋 번호 또는 추가정보
- 커밋 메시지: 무엇을 했는지 짧은 내용
[feat]: 새로운 기능 추가[fix]: 버그 수정[docs]: 문서 수정(README.md 수정)[style]: 코드의 스타일 변경(띄워쓰기, 세미콜론 등)[refector]: 코드 리팩토링(기능 변경, 코드 정리 등)[test]: 테스트 코드 추가[chore]: 기타(빌드 설정)
- 만약
회원가입 로그인 기능 추가라면 - 아래는 이슈 #23번은 해결하고 기능을 추가했다는 것
[feat](#23): 회원가입 로그인 기능 추가
- Enter 키를 기준으로 제목과 내용을 구분합니다.
[docs]: 커밋 제목
커밋 상세 내용작성
-
기존에 commit된 내용을 확인하기
-
상세보기
git log- 간략하게 보기
git log --oneline- 하나의 commit 상세보기
git show 커밋아이디- commit: 고유한 커밋 번호(아이디)
- Author: 작성자
- Date: 날짜
- 메시지: 상세 내용
나뭇가지라는 의미로 원 줄기로부터 파생되는 것을 말함.- 원
소스로 부터 파생한 새롭게분기한 소스관리를 말함.
git add .
git coomit -m "[docs]: 브랜치 실습 test 생성하기"
git branch testgit branch -vgit switch testgit branch -D 브랜치명
git branch -v- 브랜치를 하나로 합쳐주기
- 주의 사항:
main 브랜치에서 test 브랜치 합쳐줄 겁니다.
git merge 합쳐주고자하는브랜치명- 깃 브랜치를 merge 하면 많이 발생합니다.
- 나는 main에서 계속 작업을 하고 있었습니다.
login 브랜치에서 나는 로그인 기능을 구현했다.
- 만약 til_git 프로젝트 생성한다면 Github에도 동일하게 생성하자
- public으로 셋팅: 외부로 소스 공개
- description은 작성하자: 프로젝트 설명
- 새로 생성하시길 권장합니다.
- PC 정리 또는 자리 이동시 반드시 삭제하셔야 합니다.
remote는 원격(인터넷)을 말합니다.add는 추가하라origin- http 주소를 간략하게 별칭을 준 것입니다.
- 단어는 마음대로 하셔도 돼요
원격 이름을 말함
git remote add origin https://github.com/iddadda/til_git.gitgit remote -vgit add .
git commit -m "[docs]: 최초등록"- 소스 업로드를
push한다라고 합니다.
git push -u origin main-u옵션을 붙이셨다면 이후로는git push만 하면 됨.
git remote -v- 삭제하기
git remote remove 원격이름- 추가하기
git remote add 원격이름 https주소- 이름 바꾸기
git remote rename 옛이름 새이름브랜치명`
### 4.5. 추천 작업 순서
```bash
git add.
git commit -m "[docs]: 깃학습"
git push origin main- 깃허브 주소를 주의하셔야 합니다.
- 코드 소스 기준은
https로 진행 중입니다. - 코드 소스 기준이
SSH면 인증을 다시 처리하는 과정 필요
- 서울로 출장을 갔다. (PC 없이)
- 서울 사무소에 PC를 지급 받았다.
- /student/
test폴더 생성 - gitHub 사이트에 프로젝트를
clone한다. - gitHub 사이트에 Repository를
clone한다.
git clone 깃허브주소 .git statusgit branch -vgit branch 브랜치명
git switch 브랜치명git add .
git commit -m "작업내용"git push origin 브랜치명서울작업
- jeju 폴더는 clone을 하여 진행함.
til_git 폴더는 clone을 할 필요가 있을까요?- til_git은 이미 git 셋팅이 되어 있다. 그래서 clone은 필요 없다.
- 기존 프로젝트에서는 clone 하지 않음
- 기존 프로젝트에서는
fetch사용 -
- fetch는 깃허브에서 모든 브랜치 가져옴
git fetch --all-
- 브랜치 목록보기 (전체 즉, 로컬과 깃허브 브랜치 모두)
git branch -a-
새롭게 작업한 깃허브 브랜치를로컬 브랜치 생성 > 작업동시 진행하기 track 쫓아가라, c 만들어라, switch 변경하라
git switch --track -c 생성브랜치명 원격브랜치명- 예)
git switch --track -c jeju remotes/origin/jeju
- 깃허브의 브랜치 모두 내려받기
git fetch --all- 로컬 및 깃허브 브랜치 목록 모두 보기
git branch -a- 깃허브의 브랜치 중 삭제하기
git push 저장소이름 --delete 브랜치 이름- 예)
git push origin --delete jeju