pwd 현재 경로 확인
ls 현재 디렉토리 내의 파일 목록
ls - al 현재 디렉토리 내의 모든 파일 목록(숨긴파일 포함)
cd .. 상위 디렉토리로 이동
cd . 현재 디렉토리로 이동
cd ~ 홈 디렉토리로 이동
vi 파일 이름 : git-bash에 내장된 vi 편집기로 파일 편집하기
a나 i를 눌러서 입력 후 ESC, :w는 저장, :q는 나가기
:wq로 동시에 가능하다.
touch a.txt : a.txt를 생성
cat a.txt : a.txt 내용 보기
깃에는 3가지 공간이 있다.
1. 작업 디렉토리 working dirctory[tree]
2. 스테이지 index
3. 저장소 repository
- 로컬 : 내 컴퓨터
- 원격 : 인터넷, GitHub
유의미한 변경 사항을 스테이지로 add하여 로컬 저장소에 commit하고 원격 저장소에 push한다.
git status : 파일 상태 확인하기
git add 파일이름 : 스테이지에 파일 올리기
git add a.txt b.txt c.txt.. : 파일 여러개 스테이지에 올리기
git commit : 로컬 저장소에 버전 저장하기
- 커밋 메시지를 입력하는 화면으로 넘어간다.
- 커밋 메시지 제목은 첫줄, 본문은 한줄 띄고 세번째 줄부터 자세하게 적는다.
- 입력이 끝나면 ESC, :wq로 나온다.
git commit -m "메시지 입력" : 커밋 메시지를 제목만 간단히 입력할 때 사용
git log : 커밋 이력 보기
git log --oneline : 커밋 이력을 제목과 짧은 해시만으로 간단히 보기
git log --patch : 커밋 변경사항까지 자세히 보기 (아래도 같은 기능)
git log -p
git diff : 작업 디렉토리와 최근 커밋한 내용을 비교하기
git diff staged : 스테이지에 오른 파일과 최근 커밋한 내용 비교하기
HEAD : 현재 작업중인 브랜치
checkout : HEAD의 위치를 특정 브랜치의 최신 커밋으로 이동
git branch : 현재 브랜치 확인, *표시가 현재 작업중인 브랜치다.
git branch -d <branch_name> : 브랜치 삭제
git checkout <branch_name> : 특정 브랜치로 head 이동
git checkout -b <branch_name> : 브랜치 생성과 체크아웃을 동시에 하기
git merge <branch_name> : 현재 작업중인 브랜치에 특정 트랜치를 병합한다.
🔴merge를 하면
1. 새로운 커밋을 생성하는 경우 : 대부분의 경우
2. 새로운 커밋이 생성되지 않고 합쳐지는 경우 : 빨리감기한다고 한다.
🔴merge conflict
왜 일어나는가?
같은 부분을 다르게 수정하고 merge를 했기 때문
해결 방법
GIT의 경우 직접 써보면서 익숙해지는 것이 제일 좋은 방법인것 같습니다. 강의에서처럼 GITBASH를 사용하지 않고도, VSCODE의 터미널을 사용하시거나, VSCODE가 자체적으로 제공하는 GIT 관련 기능들이 있습니다(이것이 아마 GUI로 되어있어서 처음 사용하시기 편하실 수 있습니다)!
게더에 INFO BOARD를 보시면 자료 모음 링크가 있는데요, 거기에 깃 관련 참고하실만한 강의를 넣어놨으니 한번 참고하시면 좋을 것 같습니다!
자바스크립트 공부 기간때 깃허브 레포지토리를 생성해서 연결시키고 직접 PUSH 해보면서 깃을 써보시는 것도 공부에 도움이 됩니다! 화이팅!