: 새로 만들어진 파일 or 초기화된 파일
: git이 이미 알고 있는 파일
: working directory에서 옮겨와서 history올리기 : git add file
saging area -> .git directory : commit
: 버전 히스토리 올리기
.git directory -> working directory : checkout
서버에 local .git directory에 있던 것을 업로드 : push
서버에서 로컬로 : pull
파일에 저장되는 내용 : message, author, date/time
git add 파일명 : working directory -> staging area 커밋하기
git add 파일명1 파일명2 ... : 여러 파일 동시에 커밋
git add .확장자 : 확장자를 가진 모든 파일 동시에 커밋
git add : 전체 파일
git rm --cached 파일명 : staging area-> working directory untracked
rm -rf .git : .git을 삭제 다른것은 삭제하지 않음.
rm 파일명 : 파일 삭제
echo 데이터>제목.확장자 : 파일 생성
echo hello world! >helloworld.txt
echo 추가할데이터>제목.확장자 : 기존에 있던 파일에 내용추가
ls : 디렉토리 안 파일 확인 가능
하위 디렉은 다른 색상으로 표현됨.
ls -al : 디렉토리 안 파일 확인 가능 & 파일 개수 확인 가능
git status : 전체 파일 상태 확인 가능
위 상황에서는 "helloworld.txt" "weather.txt"가 untracked된 상태이고 커밋되지 않은 상태임.
위 상황은 a.txt 파일 내용을 변경한 상태. 따라서 커밋되었지만 파일이 수정되었기 때문에 modified : a.txt가 존재.
git status -s : staging area에 있는 간단하게 파일 및 상태 출력
- 초록색 글씨 : staging area에 추가된 파일
- A: adding되어서 staging area에 존재
- AM: modified staging area에 존재
- AD: staging area에 있었는데 deleted
- ??: untracked working directory에 존재
git diff : 파일 수정 내역 확인(옵션 없을 경우, working directory에 있는 것들만 비교)
이전 버전 a, c파일과 현재 수정된 b, c파일을 비교하기
"-" : 이전파일
“+” : 변경된파일
@@-1, +1,2@@
-1 : 첫번째 줄(hello world!)가 이전 파일에서 나옴
+1 : 새로 변경된 현재 파일에서 첫번째부터 둘째줄까지 확인해(hello world! +add)
→ hello world! 가 있는 상태에서 add가 추가된 상태구나~
git config --global alias.단축키 기존명령어 : 단축키 지정
git config --h : 명령어 옵션키 확인 가능
echo 파일명>.gitignore: 부수적인 것들을 gitignore로 만들어서 무시해버리기 gitignore로 대치되어버려서 부수적인 파일 명이 status 명령입력해도 보이지 않음
방향키(위)를 사용하면 이전에 사용했던 명령어 입력하지 않아도 사용가능
https://git-scm.com/docs