개발/Git

개발/Git

git stash

git stash 최근 커밋 이후로 작업했던 내용은 모두 스택에 옮겨지고 working directory 내부는 다시 최근 커밋의 상태로 초기화 어떤 브랜치에서 하던 작업을 아직 커밋하지 않았는데 다른 브랜치로 가야하는 상황에서 작업 중이던 내용을 잠깐 저장하고 싶을 때 잘못된 브랜치에서 작업하고 있을 때 git stash를 사용하기도 한다. 해결하는 과정 1. git stash로 stack에 작업 내용을 저장한다. 2. 올바른 브랜치로 가서 다시 git stash apply를 한다. 작업 내용 저장 - git stash 작업 내용 조회 - git stash list 작업 내용 적용 - git stash apply [작업 내용의 아이디] 작업 내용의 아이디를 생략하면 가장 최근의 작업 내용이 적용됨 작업..

개발/Git

git merge와 git rebase

차이점 1. rebase는 새로운 커밋을 만들지 않는다. 2. rebase로 만들어진 커밋 히스토리는 merge로 만들어진 커밋 히스토리보다 좀 더 깔끔 merge : 두 브랜치를 합쳤다는 정보가 커밋 히스토리에 꼭 남아야하는 경우 rebase : 커밋 히스토리를 깔끔하게 유지하는게 더 중요한 경우 rebase나 merge나 결과물은 똑같다.

개발/Git

git reset 주의할점

이전 커밋으로 git reset을 한다고 해도 그 이후의 커밋들이 삭제되지 않고 남아있다. git reset은 과거의 커밋뿐만 아니라 현재 HEAD가 가리키는 커밋 이후의 커밋으로도 할 수 있다. git reset과 git checkout의 차이점 [git reset] HEAD가 가리키던 브랜치가 다른 커밋을 가리키도록 한다. HEAD도 결국 간접적으로 다른 커밋을 가리키게되는 효과가 생긴다. [git checkout] HEAD 자체가 다른 커밋이나 브랜치를 가리키도록 한다. 브랜치를 통하지 않고, 커밋을 직접적으로 가리키는 HEAD를 Detached HEAD라고 한다.

개발/Git

Git 기초 명령어 (2)

git push : local repository의 내용을 remote repository에 보내기 git push -u origin master : local repository의 내용을 처음으로 remote repository에 올릴 때 사용한다. git pull : remote repository의 내용을 local repository로 가져오기 git clone (Github에 있는 오픈소스의 주소) : Github에 있는 프로젝트를 local repository로 가져오기 git log : 커밋 히스토리 보기 [--pretty=oneline 옵션 : 커밋 하나당 한 줄 씩] git diff : 두 커밋 사이의 변화 ------------------- git 명령어, 옵션 등이 긴 경우 git c..

개발/Git

Git 기초 명령어

git init : 현재 디렉토리를 Git이 관리하는 working directory로 설정하고 그 안에 repository(.git)을 생성 git status : 현재 저장소에서의 작업 내용을 확인 git config user.name '아이디' : 현재 사용자의 아이디를 설정 git config user.email '이메일 주소' : 현재 사용자의 이메일 주소를 설정 git add [파일 이름] : 특정 파일을 staging area에 올림 git add [디렉토리 이름] : 해당 디렉토리 내에서 수정사항이 있는 모든 파일들을 staging area에 올림 git add . : working directory 내의 수정사항이 있는 모든 파일들을 staging area에 올림 git reset [파일..

화서동 병아리
'개발/Git' 카테고리의 글 목록