Git

yongju·2024년 9월 1일
0

Git Study

목록 보기
2/2

git workflow

local

working directory

untracked

: 새로 만들어진 파일 or 초기화된 파일

tracked

: git이 이미 알고 있는 파일

  • unmodified 수정 안됨. 이전 버전과 동일한 것.
  • modified 수정됨. 이전 버전과 다르기에 staging area로 이동가능

staging area

: working directory에서 옮겨와서 history올리기 : git add file
saging area -> .git directory : commit

.git directory

: 버전 히스토리 올리기
.git directory -> working directory : checkout

remote

.git directory

서버에 local .git directory에 있던 것을 업로드 : push
서버에서 로컬로 : pull

파일에 저장되는 내용 : message, author, date/time

git 명령어

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가 존재.

  • staging area에 존재하는 파일 : a.txt, b.txt, c.txt
  • working directory>tracked : a.txt
  • working directory>untracked : helloworld.txt, weather.txt

    a파일이 삭제된 경우

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

profile
SI DEV

0개의 댓글