git bash 에서는 linux 명령어 사용 가능
Open Git Bash here 실행
텍스트 파일 생성
touch 파일명.txt
텍스트 문서 내용 확인
cat 파일명.txt
텍스트 편집기
vim 파일명.txt
i : 편집 mode on
esc : 명령 mode on
:wq : 저장 후 명령 mode 탈출
git으로 관리 시작
git init
directory 내용 확인
현재 디랙토리 내용을 숨김 파일까지 포함해서 확인
ls -al
추가한 내용 저장
git add . : 모든 파일을 스테이장 영역으로 올리기
git commit -m "메세지" : 커밋
<커밋 메세지가 긴 경우>
git commit
i : 메세지 여러 줄 작성하기 위한 mode
esc : 빠져나오기
:wq : 저장 후 탈출
브랜치 생성
git branch 브랜치명
브랜치 pointer 이동
branch 이동할 때 checkout보다 추천
git switch 브랜치명
빠져나오기
:q
폴더 이동
cd 폴더명
cd .. : 상위폴더로 이동
병합
git merge 합칠_브랜치명
Fast-forward
= 빠른 병합
새로운 커밋 없이 기준 브랜치의 포인터만 앞으로 이동
Automatic Merge
= 자동 병합
두 브랜치가 공통 조상 이후에 각자 커밋이 있을 때
같은 코드 중 어떤걸 건드려 충돌난 상태
<해결방법>
충돌난 부분을 편집하고 (이상한 기호를 지우고 맞게) add 후 commit

그래프 확인
git log --all --graph
용어정리
| 용어 | 뜻 |
|---|---|
| 사진 (커밋) | 저장된 스냅샷, 변경 전 버전 |
| Working Tree | 현재 작업 중인 실제 파일 |
| HEAD | 현재 보고 있는 커밋 포인터 |
GitHub
Git과 GitHub의 관계
Git : 로컬(내 컴퓨터)에 설치해서 코드 버전을 관리하는 도구
GitHub : 클라우드에 있는 Git 저장소를 공유하거나 협업할 수 있게 만든 웹사이트

복사 : clone
Github에 있는 Respository(저장소)를 내 컴퓨터로 복사
내 컴퓨터에 Git 저장소를 생성하며 파일, 브랜치, 커밋 이력까지 모두 가져온다
git clone https://github.com/사용자명/저장소이름.git
로컬 폴더를 GitHub 저장소에 연결해서 코드 올리기
1. git init : 폴더 git 초기화 (처음 한 번만)
2. git add . : 변경사항 스테이징
3. git commit -m "메시지" : 커밋 생성
4. girhub에서 Repository 생성
5. git remote add origin 저장소_링크 : 원격 저장소 연결 (한 번만)
6. git push -u origin 브랜치명 : 업로드