git

· IT & Dev.
체크아웃(checkout)특정 브랜치, 커밋, 또는 파일로 워킹 디렉토리를 전환하는데 사용된다. 새로운 브랜치로 이동하거나 특정 상태로 코드를 복원할 때 유용하다.주요 기능브랜치 이동 : 현재 작업 중인 브랜치를 다른 브랜치로 변경커밋 이동 : 특정 커밋의 상태로 디렉토리를 전환파일 복구 : 특정 커밋에서 원하는 파일을 현재 브랜치로 가져오기// master 브랜치로 이동git checkout master// 과거 커밋으로 이동 (커밋 해시는 'git log'에서 확인 가능)git checkout 1a3b3c4d// 특정 파일 복구git checkout 1a2b3c4d -- index.html체크아웃은 여러 브랜치 중 하나를 선탁하는 switch와 동일한 기능을 갖고 있다. 커밋의 이동특정 브랜치에서 커..
· IT & Dev.
원격 저장소와 로컬 저장소의 작업 내용이 동기화되어 있지 않은 상태에서는 원격 저장소의 내역을 로컬 저장소에 반영한 후 로컬 저장소의 변경 내역을 원격 저장소에 반영하게 된다.git pull 명령어란?원격 저장소의 내역을 로컬 저장소로 받아야 하는데 pull 명령을 이용한다. 이는 사실상 두가지 명령어를 결합한 것이다.git fetch : 원격 저장소의 변경 사항을 로컬로 다운로드한다.git merge : 다운로드한 변경사항을 현재 브랜치와 병합한다. 기본 사용법기본적인 git pull 명령어는 다음과 같은 형태로 사용한다.git pull [원격저장소이름] [브랜치이름]원격 저장소 이름 : 일반적으로 origin 이 사용된다.브랜치 이름 : 병합할 브랜치 이름이다.만약 이 두 가지를 생략하면 현재 브랜치..
· IT & Dev.
Git을 사용하면서 가장 많이 사용하는 명령어 중 하나가 바로 git log이다. 프로젝트의 커밋 내역을 확인하는데 필수적인 명령어이며, 다양한 옵션을 통해 커밋 내역을 효율적으로 확인할 수 있다. 가장 기본적인 git log 명령어는 다음과 같다.git log이 명령어를 실행하면 모든 커밋 내역이 시간 순서대로 출력된다. 각 커밋은 해시값, 작성자, 작성 시간, 커밋 메시지로 구성된다. 유용한 옵션들git log는 다양한 옵션을 조합하여 사용할 수 있으므로, 상황에 맞는 유용한 명령어를 조합하여 사용하면 된다. 몇 가지 자주 사용되고 유용한 예시들을 카테로기 별로 나누어 정리한다.특정 기간 또는 커밋 범위 확인- 특정 날짜 이후의 커밋git log --since="2024-12-20" // 2024년 ..
· IT & Dev.
태그 달기 특정 커밋에 태그를 달 수 있다. 특정 커밋을 지정하지 않으면 가장 마지막 커밋에 달린다. > git tag v1.0.0 태그의 목록을 보려면 아래와 같이 입력한다. > git tag v1.0.0 git show 명령을 이용해서 태그의 내용을 확인할 수 있다. 해당 태그에 달린 커밋에 어떤 변화가 있었는지 볼 수 있다. > git show v1.0.0 태그 삭제 특정 커밋에 지정한 태그를 삭제하라면 -d 옵션을 추가한다. > git tag -d v1.0.0 태그 이름 달기 > git tag -a v1.0.0 이렇게 입력하면 태그 메시지를 입력창이 실행된다. ( annotated ) 입력창 실행 없이 바로 메시지를 지정하려면 -m 옵션과 함께 메시지를 입력한다. > git tag v1.0.0 -..
· IT & Dev.
깃을 처음 설치하고 가장 먼저 설정하는 것 중에 깃에서 사용할 사용자 이름과 이메일이다. 전체 로컬 시스템에서 사용하기 위해 다음과 같이 입력한다. > git config --global user.name "이름" > git config --global user.email 이메일주소 깃의 config 명령를 이용하여 깃에 대한 설정을 추가/수정할 수 있다. 깃의 모든 설정사항을 확인하기 위해서는 다음과 같이 입력하면 > git config --global -e 개별적으로 설정한 값들을 포함한 모든 설정 사항을 확인 할 수 있다. [core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true precomposeu..
· IT & Dev.
git에서 코드를 과거로 되돌리는 방법 두 가지는 리셋(reset)과  리버트(revert)이다.다른 사람들과 함께 작업할 때 내가 커밋한 이후 다른 작업자의 커밋들이 존재할 때, 내가 작업한 내역만 삭제하고 싶다면 리셋이 아닌 리버트를 사용해야 한다.다른 사람들의 작업에는 상관없이 내가 작업한 내용을 삭제하는 히스토리를 남겨서 다른 작업자의 커밋에는 아무런 영향이 없도록 한다. 리셋은 작업 내역을 그냥 삭제하지만, 리버트는 무엇을 취소했는지를 작업 내역에서 확인이 가능하다. 리셋 (reset)- 이전 상태로 되돌아 가거나 특정 커밋을 삭제할 때 사용- 과거로 돌아간 다음 이후 행적은 작업 내역에서 삭제- 되돌리고자 하는 시점의 해시값 필요 git reset --hard f97c0c44eb5cea0e r..
· IT & Dev.
git이 동작하는 방식을 이해하고 있어도 구체적인 명령어가 생각나지 않는 경우가 많다.주로 사용하는 명령어가 정해져 있고 다양한 사례를 경험해 보지 못해 기억하지 못하는 이유가 가장 클 것이다.매번 찾아보는 번거로움을 줄이기 위해 주요 사례 별로 주요 명령어를 정리해 본다.  깃 초기화현재 디렉토리에 git을 초기화 한다.> git initInitialized empty Git repository in /Users/Username/Documents/temp/git-projects/proj-add/.git/  체크아웃 (checkout)브랜치 생성과 이동을 한번에로컬 저장소에 feature-01 브랜치가 없다면, 브랜치를 생성하고 feature-01 브랜치로 이동한다.> git checkout -b fea..
· IT & Dev.
개발 과정에서 수정되는 코드 변경사항을 작업자가 모두 기억하고 기록하는 것은 불가능하다. 코드의 변경 내용과 시점을 기록해 두는 것이 커밋이다. 이 커밋이 코드를 과거 작업 시점으로 쉽게 되돌릴 수 있는 시작점이 된다. git 이전의 버전 관리 도구인 SVN은 파일이 수정되면 수정된 파일의 복사본을 생성하여 관리를 했었다. 복사본이 많아지면 전체 파일의 용량도 늘어나고 중복된 부분도 많이 발생하여 여러모로 불편하고 효율적이지 못한 부분이 있었다. 그에 비해, git은 전체 파일 중에 수정된 부분만 떼어다가 따로 추적하기 때문에 동일한 파일을 중복적으로 관리 하지 않아도 된다. 오직 변경 이력과 시점을 커밋 단위로 관리한다. 스테이징 - 커밋을 위하여 새 파일 생성 폴더를 생성하고, git 초기화를 한 ..
· IT & Dev.
git 작업 영역과 상태 구분 git 설치가 완료되면, 초기화를 진행한 후, 브랜치를 생성하고, 작성한 코드를 git에 추가하고, 추가한 코드를 로컬 저장소에 반영하는 과정을 거치며 진행한다. 앞의 로컬/원격 저장소 개념까지는 이해하기 크게 어렵지 않은 부분이었는데 이제부터 나오는 개념은 처음 접한다면 조금 혼란스러울 수도 있겠다. git 동작 방식을 이해하려면 몇가지 용어(?)와 그에 대한 개념에 익숙해져야 한다. 작업 영역에 따른 구분 워킹 디렉토리 (Working Directory) 스테이지 영역 (Stage Area) 워킹 디렉토리 (Working Directory) 말 그대로 파일을 생성하고 수정하는 작업을 하는 로컬 저장소의 공간을 의미한다. 스테이지 영역 (Stage Area) 실제로 로컬 ..
· IT & Dev.
설치 git을 사용하기 위해서 먼저 로컬 컴퓨터에 git을 설치한다. Homebrew를 이용한 설치 homebrew는 MacOS에서 패키지 관리를 위해 사용한다. homebrew를 처음 설치한다면 homebrew 사이트의 설치하기 명령어를 복사하여 터미널에 붙여 넣어 실행한다. homebrew 설치가 완료되면 아래와 같이 입력하여 git을 설치할 수 있다. > brew install git 설치가 완료되면 git의 버전을 확인해 본다. 버전이 출력되면 정상적으로 설치된 것이다. > git --version git version 2.37.3 Windows나 리눅스를 비롯한 다른 OS를 사용하고 있다면, git 사이트 다운로드 페이지에서 운영체제 별 설치 방법에 대한 설명을 참조하길 바란다. 초기 설정 설치..
시고르빙봉
'git' 태그의 글 목록