★ Git은 비 연결형 버전 관리 도구, 필요 시에 그때그때 연결해서 관리
2005년에 Linus Torvalds가 만듬 (리눅스 개발자)
1. 단계:
Work Tree -> Index(stage) -> commit(사진찍기와 같은 것)
2. Git에 올리기:
work Tree에만 올린다고 되는게 아니고
index(stage)에 올리고
최종적으로 commit을 해야지만 올라가는 것임
(stage에 올라가야만 commit할 수 있음)
git 설치한 뒤
> git init 를 터미널에 쳐서 .git이라는 폴더 만든다.
3. git 명령어:
- git status // 상태 파악
- git status --short // 혹은 -s하면 짧게 볼 수 있음 (-- 를 앞에 붙이면 전체 단어를 씀)
Í
- git add 파일명 // (ex. basic.html)을 하면 index에 올라온 상태
git add . // (.은 해당폴더)(*은 전체폴더) 현재 폴더에 있는 모든 것을 업로드한다는 뜻
** git commit 하기 전에 이메일 주소랑 이름 적어줘야 함
- git config --global user.email "abc@def.ghi" // 이메일을 ~~@.com으로 설정
- git config --global user.name "abc" // 이름을 abc로 설정
- git config --list // config한 정보가 list로 쭉 나옴 ( 맨 밑에 : 나오면 그냥 q 누르면 됨)
- git commit // 터미널에서 commit하기 (commit창 뜨고 간단한 메모 쓰고 끄면 저장됨)
git commit -m "n 번째 커밋입니다." // 커맨드 창에서 바로 메모 쓰고 commit할 수 있는 기능, 창 안뜸
git commit -am "n 번째 커밋입니다." // add하면서 바로 commit까지 하기
(※ 만약, git commit시 터미널에서 하라고 나오면 내용 간단하게 쓰고, 맨 밑에 :q하면 그냥 꺼짐, :wq누르면 저장하고 꺼짐)
- git log // 커밋 기록 확인할 수 있음
git log --oneline // 로그 간단하게 보여줌 한 줄씩
git log --graph // 간단하게 디렉토리를 표시해줌
(근데 Extensions에서 git graph 찾아서 설치하고 Source control에서 누르면 더 가시적으로 볼 수 있음)
- git --help // 간단한 명령어들 알려줌
**저장된 기록을 되돌릴 수 있는 방법(stage->work tree)
1. add // 스테이지로 올린다
- git add . //
2. restore // 스테이지에 올라와 있는 것을 취소한 방법
- git restore --staged 파일명 // stage에 올라간 파일 다시 내릴 수 있음
3. - git diff --staged // 뭐가 변경되었는지 확인할 수 있다.
** 저장한 기록을 되돌릴 수 있는 방법(commit -> stage) // 반드시, commit이 된 상태로 움직여야 함, 무조건 commit 먼저 하기)
// 마스터(혹은 메인이라고도 함)가 항상 기본이라고 생각해야 함
1. reset // 버전기록을 삭제하는 방법, 파일은 남아있음
- git reset 예전버전의 해시값 // 7글자 적어준 코드의 위부터 저장하고 commit된 버전이 없어짐(7글자 코드까지만 저장됨)
2. revert // reset과는 다르게 이전 기록들이 남으면서 새로운 버전이 됨 (버전을 rollback)
- git revert
3. branch // resvrt와는 달리 되돌아가지만 새로운 브랜치가 생성됨, 이전 기록들 남음
- git checkout 해시값 // git log --oneline에서 나오는 7글자(=해시값) 원하는 버전에 왔다갔다 할 수 있음
git checkout - // 다시 원래의 마지막 상태로 돌아감
git checkout HEAD // ????
- git swith -c 새로운브랜치이름 // checkout의 역할이 너무 많아지면서 새로 생긴 기능, 브랜치를 만들면서 바로 이동 가능(c의 뜻은 creat)
- git branch 이름설정 // 브랜치 만들기
- git branch // 현재 생성되어 있는 브랜치들 확인, 여기서 checkout해서 원하는 브랜치로 이동할 수 있음
git branch 원래이름 바꾸고싶은이름 // 기 설정된 브랜치 이름 바꿀 수 있음
- git show 7글자 // 바꾼 내용 보여줌
* HEAD // 꼬리표 개념, 현재 내가 있는 위치를 가리킨다.
'IT > Git & Github' 카테고리의 다른 글
[형상 관리] Git (정의, 설치, 초기 설정) - 1 (4) | 2024.01.29 |
---|---|
[Git 오류] warning: LF will be replaced by CRLF (0) | 2023.06.25 |
Git 브랜치 (0) | 2023.06.04 |
Git 명령어 3 (0) | 2023.06.04 |
Git 명령어 2 (0) | 2023.06.01 |