About me
home
Portfolio
home

VS Code & Git

생성일
2023/02/11
작성자
태그
vscode
git

VS Code에서 자주 쓰이는 단축키

Ctrl+B : 사이드바 보이기/숨기기
Ctrl + ~ : 터미널 열기
Ctrl + Shift + S : 전체 파일 저장
Ctrl + W : 파일 닫기
Ctrl + Tab : 탭 이동 (웹브라우저도 동일)
Ctrl + D : 커서가 위치한 현재 단어와 동일한 다음 단어를 선택
Alt + ↑/↓ : 한줄을 위아래로 이동
F12 : 함수의 정의로 가기
Alt +F12 : 함수 peak로 보기
Ctrl + Shift + R : 리펙토링 ( 그래그하면 좌상단에 전구아이콘 뜨는게 그거 눌러도 됨)
F2 : 심볼(변수명 or 함수명) 일괄적으로 바꾸기.(참조가 있는 다른 파일에서도 바뀜)
Ctrl + L : 커서가 있는 줄 한번에 드래그 (여러번 누르면 아랫줄도 드래그됨)
Ctrl + →/← : 조금씩 warp해서 이동
Ctrl + P : 파일 탐색기 열지 않고도 다른 파일로 이동
Ctrl + Shift + T: 가장 최근에 닫은 파일 다시 열기
Ctrl + X: 현재 줄 잘라내기(선택 없이 현재 커서가 있는 줄 전체 자르기)
Ctrl + C: 현재 줄 복사하기(선택 없이 현재 커서가 있는 줄 전체 복사)
Ctrl + . : 가운데 점
Ctrl + H : 이름 바꾸기
기본 터미널을 Git Bash로 설정하는 방법 → (리눅스 명령어를 편하게 사용할 수 있음)
1.
VS Code에서 Ctrl + Shift + P 로 명령 팔레트 열기
2.
‘select default profile’ 라고 검색
3.
Git Bash 선택
4.
새 터미널부터 기본설정으로 Git Bash가 설정된 것을 확인
터미널에 git init 을 입력하면 해당 폴더에 .git 폴더가 생성된다.
.git 폴더를 지우게 되면 Git 관리내역이 삭제된다.(local 파일은 유지)
.gitignore 파일을 사용해서 깃 관리에서 배제할 요소를 지정할 수 있다.
.gitignore 파일은 재귀적으로 작동한다. 즉, .gitignore 파일이 있는 디렉토리 및 그 하위 디렉토리에서 일치하는 파일 및 디렉토리를 찾아 무시한다.
*.log build/
Plain Text
복사
첫 번째 줄은 .log 확장자를 가진 모든 파일을 Git이 무시하도록 한다. 이는 .gitignore 파일이 위치한 디렉토리 및 모든 하위 디렉토리에서 .log 파일을 찾아 무시한다.
두 번째 줄은 build/ 디렉토리 및 그 안의 모든 파일과 하위 디렉토리를 Git이 무시하도록 한다. 이는 .gitignore 파일이 위치한 디렉토리 안의 build 디렉토리를 찾아 무시하며, .gitignore 파일이 위치한 디렉토리의 하위 디렉토리 중 build 디렉토리도 무시한다.

Git을 쓸 때 사용되는 명령어

1.
git init: 현재 디렉토리를 Git 저장소로 초기화한다. 초기화하면 .git이라는 숨겨진 디렉토리가 생성되며, 이 디렉토리에는 저장소의 모든 정보가 저장된다.
2.
git status: 현재 저장소의 상태를 확인한다. 변경된 파일, 커밋되지 않은 변경 사항, 현재 브랜치 등의 정보를 보여준다.
3.
git clone [URL]: 원격 저장소의 복사본을 로컬에 생성한다. 이 때, [URL]은 복제하고자 하는 원격 저장소의 주소이다. 기본적으로 원격 저장소의 모든 브랜치를 복제한다.
만약 원격 저장소의 특정 브랜치만을 복제하려면, git clone -b [branch-name] [URL] 명령을 사용할 수 있다.
4.
git add [file]: 변경된 파일을 Git이 추적하도록 지시한다. [file] 대신 .을 입력하면 디렉토리 내의 모든 파일과 하위 디렉토리가 추적 대상에 포함된다.
5.
git commit -m "[message]": 추적 대상에 포함된 변경 사항을 저장한다. [message]는 이번 커밋에 대한 설명이다.
-m 옵션 없이 git commit 명령어를 실행하면, Git은 시스템의 기본 텍스트 에디터(예: vim, nano 등)를 열고, 여기에서 사용자가 커밋 메시지를 입력하도록 한다. -m 옵션을 사용하면 이 과정 없이 바로 커밋 메시지를 지정하고 커밋을 완료할 수 있어서 편리합하다.
git commit -am "[message]" : -a-m을 동시에 사용하여 스테이지에 추가하고 커밋 메시지와 함께 커밋한다.
6.
git log: 커밋 히스토리를 확인한다. 각 커밋의 ID, 저자, 날짜, 커밋 메시지 등의 정보를 보여준다.
git log --oneline --all --graph : 커밋 히스토리를 시각화해준다
7.
git branch [branch-name]: 새로운 브랜치를 생성한다. [branch-name]은 새로 생성할 브랜치의 이름이다.
8.
git checkout [branch-name]: 다른 브랜치로 이동한다. [branch-name]은 이동하고자 하는 브랜치의 이름이다.
-b [branch-name] : -b 옵션을 하면 새로운 브랜치를 생성하고 바로 이동한다.
9.
git merge [branch-name]: 다른 브랜치의 변경 사항을 현재 브랜치에 병합한다. [branch-name]은 병합하고자 하는 브랜치의 이름이다.
10.
git push [remote-name] [branch-name]: 로컬 브랜치의 변경 사항을 원격 저장소에 업로드한다. [remote-name]은 원격 저장소의 이름(보통 'origin')이고, [branch-name]은 업로드하고자 하는 브랜치의 이름이다.
11.
git pull [remote-name] [branch-name]: 원격 저장소의 변경 사항을 로컬에 가져와서 병합한다. [remote-name]은 원격 저장소의 이름(보통 'origin')이고, [branch-name]은 가져오고자 하는 브랜치의 이름이다.
pull = fetch + merge 이다.

Git에서 -u 옵션: Push와 Pull의 간편화

Git을 사용하다 보면, 우리는 git push 혹은 git pull 명령을 자주 사용한다.
-u 옵션은 Git의 push 혹은 pull 명령에서 사용되는데, 이 옵션은 'upstream tracking'을 설정하는 역할을 한다. 이 설정은 현재 브랜치와 원격 저장소의 특정 브랜치 간의 연결성을 지정한다. 즉, 이 옵션을 사용하면 현재 브랜치와 연결된 원격 브랜치에 대한 작업을 간편하게 수행할 수 있게 된다.
예를 들어, 원격 저장소 originmain 브랜치에 처음으로 push하려는 경우, 다음과 같이 명령어를 사용하게 된다:
git push -u origin main
Plain Text
복사
여기서 -u 옵션은 현재의 브랜치가 원격 저장소 originmain 브랜치를 추적하도록 설정한다. 이렇게 설정한 뒤에는 git push 혹은 git pull 명령만으로도 현재 브랜치와 연결된 원격 브랜치에 대한 작업을 수행할 수 있다.
reset : 원하는 시점으로 돌아간 뒤 이후 내역들을 지운다.(과거로 돌아감)
git reset --hard {돌아갈 커밋 해시}
(해시는 git log에서 찾을 수 있다.)
revert : 되돌리기 원하는 시점의 커밋을 거꾸로 실행한다.(새로운 커밋 생김)
git revert {되돌릴 커밋 해시}

merge 방법

git switch main (main 브랜치로 이동)
git merge {병합할 브랜치 이름}
(main 브랜치랑 병합되고 하나의 커밋이 생기게 된다)

GitHub 사용하기

Personal access token 만들기
우측 상단의 프로필 - Settings
Developer Settings 클릭
Personal access tokens - Generate new token
repo 및 원하는 기능에 체크, 기간 설정 뒤 Generate token
토큰은 다른 곳에 저장해놔야 함(다시 안보여줌)
토큰 윈도우 컴퓨터에 저장하기
Windows 자격 증명 관리자
Windows 자격 증명 선택
git:https://github.com 자격 정보 생성
암호에 받은 토큰 붙여넣기

GitHub에 새로운 레포지토리 생성 후 VScode와 연동

이를 복사하여 vscode 작업하는 폴더에 붙여넣기
git remote add origin {원격 저장소 주소}
로컬의 깃 저장소에 원격 저장소(origin) 연결 추가
원격 이름을 origin으로 설정한다는 의미
git branch -M main
-M 은 rename으로 기본 브랜치명을 master말고 main으로 쓴다는 것을 의미
git push -u origin main
로컬의 main 브랜치를 origin이라는 원격 저장소에 업로드함을 의미
-u 옵션을 사용하여 원격 저장소와 브랜치를 설정하면, 추후에 git pushgit pull 명령을 사용할 때 마다 해당 원격 저장소와 브랜치를 명시적으로 지정하지 않아도 된다.
따라서, git push -u origin main 명령어는 로컬의 main 브랜치를 origin 원격 저장소의 main 브랜치에 푸시하고, 이후부터는 git pushgit pull 명령을 실행할 때 originmain 브랜치를 기본적으로 사용하게 설정하는 것이다.

원격 목록 보기

git remote : 로컬 Git 저장소에 등록된 모든 원격 저장소의 목록을 출력
git remote -v : 원격 저장소의 주소까지 출력
git remote remove {origin 등 원격 이름} : 로컬과 연결만 끊어줌

GitHub에서 협업 프로젝트 다운받기

Download ZIP으로 다운받으면 .git 파일이 없어서 깃의 관리 내역은 없다.
따라서 git clone {원격 저장소 주소} 를 터미널에 입력하여 다운받아야 한다.
Git Bash Here를 누른다. 그러면 폴더 디렉토리에서 Git Bash 터미널이 열린다. git clone {원격 저장소 주소} 를 입력해주면 된다.
GitHub 웹사이트 내에서 파일을 클릭하고 우측에 Edit 아이콘을 눌러 편집할 수도 있다. 이후 로컬 터미널에서 git pull 을 해줘야 한다.