안녕하세요~~~ jju_developer입니다.
오늘은 초기 세팅시에 git 관련한 내용을 복습하는 의미로
돌아왔습니다.
그럼 지금부터 시작하겠습니다!
Git 및 관련 도구 사용 설명서
1. 버전 확인
CMD 윈도우 터미널 열기
* GIT : git --version
* VSCode : code --version
* 깃포크 : -git fork
2. SourceTree 설정
- 설치시 주의사항 : 설치 시 머큐리얼(Mercurial)은 체크 해제 (깃만 사용할 예정).
- 빅버킷, 버킷서버는 건너뛰기.
- 사내 서버: GitLab 서버 → 내부 서버망에 설치. 위시는 도커로 운영되며, 사내 서비스도 도커로 운영함
- SSH 키: HTTP 방식으로 접속하고, SSH 키는 나중에 등록함으로 SSH 키없음으로 선택
3. Git 기본 명령어
우선 빈 폴더에 깃 저장소를 만들겠다 라고 선언을 해야합니다.
그러기 위해서는 빈 폴더 (내가 작업을 하려는 폴더)에
오른쪽 클릭 후 code로 열기를 해줍니다.
저는 practice 폴더를 만들고, VSCODE로 열어보겠습니다!
자, 이제 저는 practice폴더에 있는 코드를 깃에 관리를 하고자 합니다.
이때, 깃 저장소로 하겠다 라는 명령어를 쓰겠습니다.
우선, 코드의 빈 화면에서 Ctrl +Shift +` 를 눌러주면 터미널 창이 생깁니다.
이때에 파워쉘이 아니라,
git bash로 열어주셔야 합니다.
3-1) Git 저장소 초기화 > git init
bash를 열어주고,
> git init
이렇게 하면
깃 저장소가 만들어 진겁니다.
숨긴 폴더 목록을 보면,
전에 없었던 .git 폴더가 생기는 것을 볼 수 있습니다.
이제 아무거나 폴더를 생성해서 변경 사항을 커밋 해보도록 하겠습니다.
3-2) 변경 사항 커밋 > git add .
> git add .
git commit -m "Add text"
- git add .:
- . (점)은 현재 디렉토리와 그 하위 디렉토리의 모든 파일을 의미합니다. 따라서 git add .는 현재 디렉토리와 그 하위 디렉토리의 모든 변경된 파일을 스테이징 영역에 추가합니다.
- 모든 변경된 파일을 스테이징 영역에 추가합니다.
- 이 단계에서는 변경 사항이 준비되었지만 실제로 저장소에 기록되지는 않습니다.
- git commit -m "Add text":
- 스테이징 영역의 파일 변경 사항을 커밋으로 저장소에 기록합니다.
- "Add text"는 이 커밋에 대한 설명을 제공합니다.
3-3) 원격 저장소에 푸시
만약 원격 저장소를 등록 하지 않았다면
git remote add origin <url>
명령어로 원격 URL을 입력해주시면됩니다.
저는 git remote -v 했을때 아무것도 안나옵니다.
등록을 안했기 때문이죠,
만약 등록을 하신 분들은 아래 명령어로 푸시 해주시면 됩니다.
> git push [원격 저장소 이름] [브랜치 이름]
예시) git push origin master
5. Git 설정 및 사용법
5-1) Git 설정 확인:
> git config --global --list
git config --global --list 명령어는 Git의 전역 설정을 나열합니다.
사용자의 이름은 무엇이고, 내가 등록한 이메일은 무엇인지 확인이 가능합니다.
Git에서 커밋을 할 때, 커밋 작성자의 이메일 주소를 설정한것이 보입니다.
이름을 변경할 수도 있죠!
5-2) 사용자 이름 변경
> git config --global user.name "OOO"
Git의 전역 설정에서 커밋 작성자의 이름을 OOO로 변경합니다.
5-3) 파일 추가 및 커밋
> git add NEW.md
git commit -m "add file NEW.md"
5-4) 커밋 로그 확인
명령어: git log --oneline
이 명령어는 Git 커밋 로그를 한 줄로 간략하게 출력합니다.
각 커밋은 고유의 해시와 커밋 메시지로 요약됩니다.
용도: 긴 커밋 로그를 간단히 확인하고 싶을 때 유용합니다.
--oneline 플래그는 각 커밋을 한 줄로 출력하여 로그를 간결하게 만듭니다.
5-5) 커밋 수정 및 관리
> 가장 최근 커밋 수정
명령어: git commit --amend
가장 최근 커밋을 수정할 수 있는 명령어입니다.
커밋 메시지를 변경하거나, 커밋에 추가적인 변경 사항을 포함할 때 사용합니다.
용도: 커밋 후 수정할 필요가 있는 경우, 예를 들어 커밋 메시에 오타가 있었거나, 커밋에 포함되지 않은 파일이 있을 때 유용합니다.
5-6) 특정 커밋 수정
명령어: git rebase -i HEAD~n
git rebase -i 명령어를 사용하면 인터랙티브 모드로 커밋을 수정하거나 재배치할 수 있습니다.
HEAD~n은 현재 브랜치의 HEAD에서 n개의 커밋을 포함하여 수정할 수 있음을 의미합니다.
용도: 여러 개의 이전 커밋을 수정하거나 변경 순서를 조정할 때 유용합니다.
6. Git 리셋 및 복구
6-1) 커밋 폐기
- 커밋만 제거 (스테이징 상태 유지):
git reset --soft HEAD~1
- 커밋과 변경 사항 모두 제거:
git reset --hard HEAD~1
6-2) 리포지토리 초기화
- 스테이징된 변경 사항 제거:
git reset
- 작업 디렉토리와 스테이징 영역 초기화:
git reset --hard
6-3) 커밋 수정
- 최근 커밋 메시지 수정:
git commit --amend
- 인터랙티브 리베이스로 커밋 수정:
git rebase -i HEAD~n
6-4) 커밋 복구
- `git reflog` 사용하여 이력 확인 및 복구:
git reflog
git reset --hard HEAD@{n}
7. 기타 도구
7-1)GitKraken : UI가 예쁘다고 평가됨. 사용 용도는 자유.
7-2) GitFork : 파일 → New Init로 저장소 생성.
이렇게 깃 사용법을 복습해봤습니다.
오늘도 고생 많으셨고, 깃을 처음 사용하시는 분들께 도움 되셨으면 좋겠습니다.
감사합니다~!

'서버세팅 관련' 카테고리의 다른 글
[SVN] 소스코드 체크아웃 방법 (0) | 2024.08.30 |
---|---|
기존 DB export 할때 실수 -> Advanced Options 눌러서 (0) | 2024.06.20 |
mysql db 구조 덤프 뜬거 import 할때 자주 생기는 오류~ (0) | 2024.06.20 |
mysql 덤프 뜨다가 잘못떠서 스키마 전체 테이블을 삭제해야할때...! (0) | 2024.06.20 |
[ERROR] 우분투 서버 시간 ERROR (putty 디버그 시간 에러) (2) | 2024.01.23 |