Development Study/Background Knowledges [Git] 명령어 정리 - 728x90 1. 설정, 초기화 전역 사용자 이름, 이메일 구성 git config --global user.name "이름 입력" git config --global user.email "이메일 입력" 저장소별 사용자 이름, 이메일 구성(입력 전에 해당 저장소 디렉토리로 이동해야 함) git config user.name "이름 입력" git config user.email "이메일 입력" 전역 설정 보기 git config --global --list 저장소별 설정 보기 git config --global --list Git의 출력결과 색상 활성화하기 git config --global color.ui "auto" 새로운 저장소 초기화하기 1) mkdir /path/newDir mkdir = make directory 2) cd /path/newDir cd | .. = 선택 폴더 내부로 이동 / 상위 폴더로 이동 3) git init 저장소 복제하기 git clone <저장소 url> 새로운 원격 저장소 추가하기 git remote add <원격 저장소> <저장소 url> 2. 기초 사용법 [ ] 내부의 코드는 선택적으로 사용하는 매개변수를 의미한다 새로운 파일을 추가하거나 존재하는 파일 스테이징하고 커밋하기 스테이징 = git add로 커밋할 내용들을 추가하는 것 커밋 = git에 반영하는 것 git add <파일/디렉토리 경로> ---------------변경된 일부만 스테이징 git add . ----------------------------------모든 변경내용을 스테이징(현재 디렉토리) git add -A --------------------------------모든 변경내용을 스테이징(작업 디렉토리) git add -p [<파일>[<파일>[...]]] ------------각 변경사항을 터미널에서 직접 확인하며 스테이징 or 제외 git add -i ---------------------------------add 명령에서 git 대화 모드를 사용하여 파일 추가 git add -u [<경로>[<경로>]] ---------------수정되고 추적되는 파일의 변경 사항 스테이징 git add -m "<메세지>" -a -------------------------------수정되고 추적되는 모든 파일의 변경 사항 커밋하기 git checkout HEAD <파일>[<파일>] --------작업 트리의 변경 사항 돌려놓기 git reset HEAD <파일>[<파일>] ------------커밋되지 않고 스테이징된 변경 사항 재설정하기 git commit -m "<메세지>" --amend -------마지막 커밋 고치기 git commit -C HEAD --amend ------------이전 커밋을 수정하고 커밋 메세지를 재사용하기 3. 브랜치 git branch -----------------------------------------로컬 브랜치 목록 보기 git branch -r ---------------------------------------원격 브랜치 목록 보기 git branch -a ---------------------------------------로컬과 원격 등 모든 브랜치 목록 보기 git branch <새로운 브랜치> --------------------------현재 브랜치에서 새로운 브랜치 생성하기 git checkout <브랜치> ------------------------------다른 브랜치 체크아웃하기 git checkout -b <새로운 브랜치> ---------------------현재 브랜치에서 새로운 브랜치 생성하고 체크아웃 하기 git branch <새로운 브랜치> <브랜치를 생성할 위치> -----다른 시작지접에서 브랜치 생성하기 git branch -f <기존 브랜치> [<브랜치를 생성할 위치>] ---기존의 브랜치를 새로운 브랜치로 덮어쓰기 git checkout -m <기존 브랜치> <새로운 브랜치> --------브랜치를 옮기거나 브랜치명 변경하기(<새로운 브랜치> 미존재 시) git checkout -M <기존 브랜치> <새로운 브랜치> --------무조건 덮어쓰기 git merge <브랜치> ----------------------------------다른 브랜치를 현재 브랜치로 합치기 git merge - -no-commit <브랜치> --------------------커밋하지 않고 합치기 git cherry-pick <커밋명> -----------------------------선택하여 합치기 git cherry-pick -n <커밋명> --------------------------커밋하지 않고 선택하여 합치기 git merge - -squash <브랜치> ------------------------브랜치의 이력을 다른 브랜치에 합치기 git branch -d <삭제할 브랜치> -------------------------브랜치 삭제하기 git branch -D <삭제할 브랜치> -------------------------삭제할 브랜치가 합쳐지지 않아도 삭제하기 4. Git Log git log --------------------------모든 로그 git log -p -----------------------변경사항 + 로그 git log -1 -----------------------로그 개수 1개로 제한 gir log -20 ---------------------로그 개수 20개로 제한 git log --since="6 hours" ------6시간 내에 이루어진 커밋 로그 git log --before="2 days" ------2일 이내의 커밋 로그 git log -1 HEAD-3 --------------HEAD보다 세 개 이전의 커밋 로그 git log -1 HEAD^^^ git log -1 HEAD~1^^ git log <시작 지점>...<끝 지점> ---두 지점 사이의 커밋 로그 git log --pretty=oneline --------각 항목 로그 이력 한줄씩 git log --stat -------------------각 항목 별 영향받은 줄 통계 git log --name-status ----------커밋 할 시점의 파일 상태 git diff -------------------------현재 작업 트리와 인덱스의 차이점 git diff --cached ---------------인덱스와 저장소의 차이점 git diff HEAD -------------------작업 트리와 저장소의 차이점 git diff <시작 지점> --------------작업 트리와 특정 위치 간의 차이점, 시작지점은 커밋명 or 브랜치명 or 태그명 git diff <시작 지점> <끝 지점> -----저장소의 두 지점 사이의 차이점 git diff <시작 지점> [<끝 지점>] ---차이점 통계 git blame <파일> ----------------파일의 커밋 정보 줄 단위로 git blame -M <파일> -------------파일의 줄 단위의 복사, 붙여넣기, 이동 정보 git blame -C -C <파일> ----------파일의 줄 단위의 이동, 원본 파일 정보 git log -C -C -p -1 <특정 지점> ---로그에서 복사, 붙여넣기 정보 5. 원격 저장소 git clone <저장소> --------------------------저장소 복제 git clone --depth 200 <저장소> -------------마지막 200개의 커밋만 포함한 저장소 복제 git remote add <원격 저장소> <저장소 url> ----새로운 원격 저장소 추가 git branch -r --------------------------------모든 원격 브랜치 목록 git branch <새로운 브랜치> <원격 브랜치> ------원격브랜치에서 지역 브랜치 생성 git branch <새로운 브랜치> <원격 태그> --------원격 태그에서 지역 브랜치 생성 git fetch -------------------------------------origin 저장소에서 합치지 않고 지역 브랜치로 변경 사항 가져오기 git fetch <원격 저장소> ------------------------원격 저장소에서 합치지 않고 지역 브랜치로 변경 사항 가져오기 git pull <원격 저장소> -------------------------원격 저장소에서 변경 사항을 가져와 현재 브랜치에 합치기 git pull ---------------------------------------지역 브랜치를 원격 브랜치에 푸싱 git remote prune <원격 저장소> ----------------원격 저장소에서 쓸모가 없어진 원격 브랜치 제거 git remote rm <원격 저장소> -------------------원격 저장소를 제거하고 관련된 브랜치도 제거 End 참고 자료 더보기 https://medium.com/@joongwon/git-git-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%A0%95%EB%A6%AC-c25b421ecdbd [Git] Git 명령어 정리 한동안 포스팅 주제도 못 잡았고 회사일이 너무 바빠서 블로그 엄두도 못 내다가 추석 연휴 때 고향에 내려가서 휴식을 취하며 독서도 하고 포스팅도 하려고 했지만.. 그것도 여의치 않았다. 대 medium.com https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=occidere&logNo=220815786952 1. 리눅스 기초 명령어(cd, mkdir, ls, pwd, clear) 이번에는 아주 빈번히 사용되는 기초 명령어인 cd와 mkdir, ls와 pwd에 대해 알아보겠다. cd는 윈도우 cmd... blog.naver.com https://ebbnflow.tistory.com/196 [Git] git 사용법 튜토리얼1 - 초기화, 스테이징, 커밋, 되돌리기 git 사용법 튜토리얼 시리즈 1 초기화, 스테이징, 커밋, 되돌리기 2 깃 브랜치(branch) 같은 파일로 여러 버전 만들기 3 깃허브와 연동하기 4 브랜치 원격에서 다루기 5 PR (Pull Request) & Issue 6 오픈 소스 ebbnflow.tistory.com https://www.daleseo.com/git-add/ git add 기본 개념/사용법 Engineering Blog by Dale Seo www.daleseo.com https://www.daleseo.com/git-push/ git push 사용법/팁 Engineering Blog by Dale Seo www.daleseo.com 728x90 공유하기 게시글 관리 TimeMap.exe 저작자표시 비영리 변경금지 'Development Study > Background Knowledges' 카테고리의 다른 글 [API] Essential programming system, API (0) 2023.01.06 [Git] Git은 뭐하는 친구일까 (1) 2023.01.03 [IntelliJ] build.gradle 뜯어보기 (0) 2022.11.26 [IntelliJ] Gradle 프로젝트 실행 속도 높이기 (0) 2022.11.25 [IntelliJ] Windows에서 Preference 여는 법 (0) 2022.11.24 Contents 당신이 좋아할만한 콘텐츠 [API] Essential programming system, API 2023.01.06 [Git] Git은 뭐하는 친구일까 2023.01.03 [IntelliJ] build.gradle 뜯어보기 2022.11.26 [IntelliJ] Gradle 프로젝트 실행 속도 높이기 2022.11.25 댓글 0 + 이전 댓글 더보기