터미널으로 Git 사용하기
- 원하는 파일의 경로에서 터미널을 열기
관리하고 싶은 파일을 뜻함
- 폴더에 Git을 집어 넣는다
git init
- 이름과 이메일 등록
git config --global user.name "내 이름"
이름등록
git config --global user.name "내 이메일 주소"
이메일 등록
- Git에 모든 파일을 넣는다
git add -A
- Git에 파일을 넣기전
- 넣고 난 다음 모습
git status
- commit하기
git commit -m "내용 설명"
- 이제껏 commit한 내용들을 확인
git log
- 복원하는법
git log에서 돌아갈 부분을 찾아 일련번호 앞에 6글자를 복사한다.git reset 일련번호 --hard
이 방법은 돌아갈 부분으로 이동하고 그 이후의 작업들은 사라진다.
- 했던 작업을 취소하여 복원 하는 방법
git log에서 취소할 부분을 찾아 일련번호 앞에 6글자를 복사한다.git revert 일련번호
이러면 새 커밋 메시지를 작성하는 화면이 뜬다.
:wq
그대로 저장한다.
이런식으로 진행하고 log를 확인해보면 reset과는 달리 원래있던 log에 추가로 revert가 생긴다.
(이전에 작업했던 것이 지워지지 않고 log에 남아있다.)
branch
git branch 브랜치이름설정
- 브랜치 생성
git checkout 브랜치이름
- '브랜치이름'으로 이동
이 이후에 전에 했던 작업들을 해주고 똑같이 하던 작업을 한다.
ex) git add -A -> 이후 작업을 하고 -> git commit -m "Add 새로운 브랜치에서의 작업"브랜치의 브랜치를 생성할 수도있다.
merge
git checkout main
- main 브랜치로 돌아옴
___ git merge 변화를 수용할 브랜치
- 기본 파일에 브랜치에 작업한 내용을 합친다.
윈도우에선 바로 적용이 되지만
맥에서는 커밋 메시지를 작성하는 vi화면이 나온다.:wq
맨위에 적힌 것을 그대로 쓰는 명령어
git log --graph --all --decorate
- 작업한 내용을 브랜치별로 시각화해서 보여줌
- merge 할 때 같은 파일에 같은 내용으로 수정을 했다면 두 파일간 충돌이 일어난다.
충돌이 일어났을 때 하나를 택하여 지워주고 저장한 다음git add -A
git commit
:wq
명령어를 사용하여 못다한 merge를 마저 실행해준다.
이를 방지하기 위해 브랜치마다 다른 파일을 작업하게한다.
git rebase 브랜치이름
- merge를 사용하게 되면 그 수가 많아질수록 시각화를 하였을 때 복잡하게 보이고 헷갈릴 수 있다.
이 때 merge한 것이 한 줄로 깔끔하게 정리할 때 쓰는 코드
git branch -D 브랜치이름
- 다 쓴 브랜치를 삭제할 때 쓰는 코드
push하기
git remote add origin (github repository URL)
- 원격 저장소와 내 로컬을 연결
git push origin main
- origin이라는 원격저장소의 master 브랜치에 push
pull
git pull
다른 사람이 원격 저장소에 업데이트한 파일이 있을 때, 원격저장소와 내 로컬저장소의 상태를 동일하게 만들기 위해 pull을 이용