Git
명령어
원2
2025. 4. 7. 18:28
728x90
반응형
IntelliJ 내장 Git 기능 관련 (GUI)
IntelliJ는 메뉴와 단축키를 통해 다양한 Git 기능을 제공합니다.
- 프로젝트 버전 관리 활성화:
- VCS -> Enable Version Control Integration...
- Git을 선택하고 확인을 누르면 프로젝트에 Git이 활성화됩니다.
- 커밋 (Commit):
- Ctrl + K (Windows/Linux) 또는 Cmd + K (macOS)
- 변경 사항을 스테이징하고 커밋 메시지를 작성한 후 커밋할 수 있습니다.
- 커밋 전에 변경 사항을 확인하고 특정 파일만 포함하거나 제외할 수 있습니다.
- 푸시 (Push):
- Ctrl + Shift + K (Windows/Linux) 또는 Cmd + Shift + K (macOS)
- 로컬 커밋을 원격 저장소로 업로드합니다.
- 어떤 브랜치로 푸시할지 선택할 수 있습니다.
- 풀 (Pull):
- Ctrl + Alt + Shift + K (Windows/Linux) 또는 Cmd + Option + Shift + K (macOS)
- 원격 저장소의 변경 사항을 로컬 브랜치로 가져와 병합합니다.
- 브랜치 (Branch):
- VCS -> Git -> Branches...
- 새로운 브랜치를 생성하거나 기존 브랜치를 확인하고 전환할 수 있습니다.
- 오른쪽 하단의 브랜치 이름을 클릭해도 브랜치 관리 창이 열립니다.
- 병합 (Merge):
- 병합할 브랜치로 체크아웃한 후, VCS -> Git -> Merge... 를 선택하고 병합할 브랜치를 선택합니다.
- 충돌이 발생하면 IntelliJ에서 충돌 해결 도구를 제공합니다.
- Rebase:
- 병합과 유사하지만 커밋 기록을 깔끔하게 만들 때 사용합니다.
- VCS -> Git -> Rebase... 를 선택하고 Rebase할 브랜치를 선택합니다.
- 로그 보기 (Show History):
- 파일 또는 프로젝트를 우클릭하고 Git -> Show History 를 선택하면 커밋 로그를 확인할 수 있습니다.
- 각 커밋의 변경 사항, 작성자, 날짜 등을 확인할 수 있습니다.
- Staging (파일 추가):
- Project 도구 창에서 변경된 파일을 우클릭하고 Git -> Add 를 선택하거나, 커밋 창에서 체크박스를 선택하여 스테이징합니다.
- IntelliJ는 변경 사항을 "Changes" 창에서 확인할 수 있으며, 이곳에서 스테이징/언스테이징을 관리할 수 있습니다.
- Stash:
- 작업 중인 변경 사항을 임시로 저장하고 나중에 다시 불러올 수 있습니다.
- VCS -> Git -> Stash Changes... 로 저장하고, VCS -> Git -> Unstash Changes... 로 불러옵니다.
- 되돌리기 (Revert/Checkout):
- 특정 커밋으로 되돌리거나(Revert), 파일의 특정 버전으로 되돌릴 수 있습니다(Checkout).
- 로그 창에서 커밋을 우클릭하여 Revert Commit 을 선택하거나, 파일의 히스토리에서 특정 버전을 Checkout 할 수 있습니다.
터미널에서 자주 사용하는 Git 명령어
- git init: 현재 디렉토리를 Git 저장소로 초기화합니다. (IntelliJ에서 프로젝트 버전 관리를 활성화하면 자동으로 실행됩니다.)
- git clone <저장소 URL>: 원격 저장소의 코드를 로컬로 복제합니다.
- git status: 현재 브랜치의 상태와 변경된 파일들을 보여줍니다. (스테이징 여부 등)
- git add <파일 이름> 또는 git add .: 특정 파일 또는 모든 변경 사항을 스테이징 영역에 추가합니다.
- git commit -m "<커밋 메시지>": 스테이징된 변경 사항을 커밋합니다.
- git push origin <브랜치 이름>: 로컬 커밋을 원격 저장소의 특정 브랜치로 푸시합니다.
- git pull origin <브랜치 이름>: 원격 저장소의 특정 브랜치 변경 사항을 로컬 브랜치로 가져와 병합합니다.
- git branch: 로컬 브랜치 목록을 보여주고, 현재 브랜치는 * 표시됩니다.
- git branch <새 브랜치 이름>: 새로운 로컬 브랜치를 생성합니다.
- git checkout <브랜치 이름>: 특정 브랜치로 전환합니다.
- git checkout -b <새 브랜치 이름>: 새로운 브랜치를 생성하고 바로 전환합니다.
- git merge <병합할 브랜치 이름>: 현재 브랜치에 다른 브랜치의 변경 사항을 병합합니다.
- git log: 커밋 기록을 보여줍니다. 다양한 옵션을 사용하여 상세 정보, 그래프 등을 확인할 수 있습니다. (git log --oneline, git log --graph --decorate --oneline --all 등)
- git stash: 현재 변경 사항을 임시로 저장합니다.
- git stash list: 저장된 Stash 목록을 보여줍니다.
- git stash apply: 가장 최근의 Stash를 적용합니다.
- git stash apply stash@{<인덱스>}: 특정 Stash를 적용합니다.
- git stash pop: 가장 최근의 Stash를 적용하고 Stash 목록에서 제거합니다.
- git reset HEAD <파일 이름>: 스테이징된 특정 파일을 언스테이징합니다.
- git reset --hard <커밋 해시>: 특정 커밋으로 되돌리고 이후의 모든 변경 사항을 삭제합니다. (주의해서 사용해야 합니다!)
- git revert <커밋 해시>: 특정 커밋의 변경 사항을 취소하는 새로운 커밋을 만듭니다.
728x90
반응형