Git 배우기

Git 기본
-
git commit : “누가 이 코드를 수정했는지” 기록
-
git branch [브랜치명] : 새로운 브랜치를 만드는 명령어
-
git checkout [브랜치명] : 브랜치 이동, 생성, 파일 복구, 특정 commit 이동 등 다양하게 사용
-
git merge : 다른 브랜치와 합칠 때 사용
-
git rebase : commit을 모아서 복사하고 다른 곳에 놓는데 사용
다음 단계로
-
HEAD : 현재 작업중인 commit. 항상 작업트리의 가장 최근 커밋을 가리킵니다. (checkout 명령어로 통해 브렌치와 분리가 가능합니다.)
-
git branch -f HEAD~n : 브랜치를 강제로 HEAD에서 n만큼 뒤로 옮깁니다. (HEAD^를 사용하면 뒤로 한 칸 옮길 수 있습니다.)
-
git reset : 작업을 되돌릴 때 사용하는 명령어. 커밋 내역들을 삭제하고, 특정 시점의 커밋으로 되돌아갑니다. 때문에 주로 로컬 브랜치에서 사용됩니다.
-
git revert : 작업을 되돌릴 때 사용하는 명령어. 이전 커밋 내역들은 그대로 두고, 되돌리고 싶은 커밋의 코드만 복원시킵니다.
코드 이리저리 옮기기
-
git cherry-pick [커밋1] [커밋2] : HEAD 아래에 있는 일련의 commit에대한 복사본을 만듭니다.
-
git rebase -i HEAD~n : HEAD에서 n만큼 뒤에 있는 것들 중에 선택하여 복사
Git 태그
- git tag [태그명] [브랜치명] : 해당하는 브랜치에 태그를 붙여주는 명령어. 브랜치명을 쓰지 않으면 HEAD가 가리키는 위치에 태그를 달아버립니다.
Git 원격 저장소
-
git clone : 원격 저장소에서 만들어진 것을 로컬 컴퓨터에 복사하는 명령어
-
git fetch : 원격 저장소의 최신 정보를 로컬 저장소로 가져오지만, 현재 작업 중인 파일이나 로컬 브랜치에는 영향을 주지 않는 명령어
-
git push : 로컬에서 commit한 내용을 원격 저장소로 업로드하여 동기화하는 명령어
-
git pull : 원격 저장소의 최신 변경 사항을 가져와 로컬 저장소에 자동으로 merge하는 명령어