modesta.log
로그인
modesta.log
로그인
git command 정리
jihyelee
·
2023년 12월 19일
팔로우
0
개념정리
0
configuration 관련
git config --list
configuration 확인
git config --global -e
에디터를 열어 확인
git config --global core.editor "code"
code .로 원하는 에디터 연결 가능. 예를 들어 visual studio code에 연결한다면 VScode에서 config 수정 가능
git config --global core.editor "coder --wait"
에디터에서 편집이 끝날 때까지 다른 명령어 실행 X
git config --global user.name "이름"
github의 이름(아이디) 연결
git config --global user.email "메일"
github의 이메일 연결
git config --global user.password "비밀번호"
깃헙에서 본인의 토큰을 발급받을 수 있는데, 이를 비밀번호로 사용
name, email, password 등이 제대로 작성되어 있어야 remote-local 연결 가능
git config --global core.autocrlf input
개행(new lline) 시에 윈도우의 경우 text\r\n이 들어가고 맥에서는 text\n이 들어가는데, 이처럼 줄바꿈 문자열이 다르기 때문에 이를 수정하기 위해 해당 명령어 사용
git config --global alias.st status
git status에 대한 alias 설정
Git Workflow
Local
working directory(untracked, tracked(unmodified, modified)), staging area, .git directory
commit
staging area -> .git directory
커밋 시 버전에 관련한 메시지, author, 날짜와 시간 등등 활용해 버전관리 가능
checkout
.git directory -> working directory
Remote
push
local to remote
pull
remote to local
local 관련 자주 사용하는 명령어
git init
git 초기화 (master branch 생성)
git status
git 상태 확인
git status -s
짧은 버전으로 git 상태 확인
git add
working directory에서 git이 추적할 수 있는 staging area로 옮기기 위해 사용
git add한 파일을 수정하면 수정사항은 staging area에 반영되지 않으나, tracking 시작되었기 때문에 tracked
git add *
디렉토리에 있는 모든 파일들이 staging area로 넘어감
git add .
모든 파일들이 staging area로 넘어감
git commit -m "메시지"
staging area에서 git directory로 이동하기 위해 사용 (일반적으로 메세지와 함께 커밋)
git commit -a "메시지"
-a은 all, 즉 working directory에 있는 파일을 모두 커밋하겠다
커밋 메시지는 동사형, 기본형으로 작성 (예: fix, commit 등)
history와 일치하는 commit 메시지를 작성하는 것이 중요 (의미있는 단위로 커밋)
git diff
working directory에 있는 이전 버전과 이후 버전 비교
빨간색은 삭제, 초록색은 추가된 내용, q로 종료
git diff --staged
staging area에 대한 diff만 확인 가능
git difftool
git config --global -e로 edit 모드로 열어 아래 내용 추가하면 변경 내용을 vscode에서 확인 가능
[diff] tool = vscode [difftool "vscode"] cmd = code --wait --diff $LOCAL $REMOTE
git checkout "브랜치명"
branch 이동
일반적으로 main 브랜치는 PR(pull request, 코드리뷰)이 완료된 내용만 merge하기 때문에, 작업 내용마다 새로운 branch를 생성하고 이를 remote에 push
git checkout -b "브랜치명"
새로운 브랜치를 생성하고 이동 (해당 브랜치에서 작업)
git merge "브랜치명"
작업하고 있는 해당 브랜치에 다른 브랜치를 합침
remote 관련 자주 사용하는 명령어
git clone "주소"
remote(예: github)에서 repository 복사
git remote add origin "주소"
remote의 주소를 연결 (fetch, push 가능)
git pull origin "branch명"
remote에서 해당 branch의 내용을 가져옴
git stash
git pull을 하기 전 나의 변경내용을 백업
git stash pop
git pull을 한 이후 나의 변경내용을 pull한 내용과 합침
git push origin "branch명"
나의 작업내용을 해당 remote branch로 push
기타 알아두면 좋을 명령어
git rm --cached *
untracked로 상태 변경
echo *.log > .gitignore
log 확장자 파일은 모두 add하지 않겠다 (untracked로 유지)
만약 특정 디렉토리 안에 있는 파일들을 track하고 싶지 않다면 directory/와 같이 작성
혹은 그 안의 특정 확장자 파일을 포함하지 않겠다면 directory/*.log와 같이 작성 가능
cat a.txt
파일 내용 확인
참고 영상 (
link
)
jihyelee
Graduate student at Seoul National University, majoring in Artificial Intelligence (NLP). Currently AI Researcher at LG CNS AI Lab
팔로우
이전 포스트
docker command 정리
다음 포스트
도메인 지식을 인코딩하기 위한 Theseus 소개
0개의 댓글
댓글 작성