🤼Git 13

git reflog, git 실수 했을 때 되돌리는 방법

reflog = reference log 참조 기록의 줄임말 ls .git cd logs 실수하거나 깃 로그에서 더이상 볼 수 없게 된 커밋의 해시에 접근해야할 때 유용하다! 주의!! 1. reflog는 지역적이다! (오직 내 컴퓨터의 참조 목록에 대한 변경사항만을 저장한다. ) 2. 영구적이지 않다! 약 90일이 지나면 만료된다. gut reflow show HEAD or 브랜치명 git relow show HEAD vs git log 같지 않다!! git log에는 포함되지 않는 것을 포함한다. 예를들면 내 브랜치 체크아웃을 하는 것에는 기록으로 남기지 않음! 그저 커밋 기록을 가지고 있을 뿐이다. HEAD@{2} => 2번의 움직임 전에 헤드가 어디 있었는지 알려준다. git checkout HEA..

🤼Git 2023.04.23

오픈 소스에 기여하는 방법

1. 기여하고 싶은 레파지토리를 FORK 한다. 2. 내 계정에 fork 받은 레파지토리를 CLONE한다. 3. 기여하고 싶은 레파지토리에 UPSTREAM을 추가한다. git remote add upstream https://github.com/기여하고 싶은 브랜치를 만든 유저명/기여하고 싶은 브랜치명 4. 로컬 상에서 작업을 한다. 5. 내 계정의 레파지토리에 PUSH 한다. 6. 기여하고 싶은 레파지토리에 PULL REQUEST를 보낸다. ‼️pull request를 보내기 전에 원래 레파지토리에 변경된 수정 사항을 pull 받는다. git pull upstream main 클론(Clone)과 포크(Fork)의 차이 공통점 = 다른 원격 저장소의 내용을 복제하여 가져온다 차이점 = 클론(Clone)은..

🤼Git 2023.04.16

clone 받은 레파지토리에서 env 설정하기, go path 설정하기

필요한 키를 받아서 폴더의 최상단에 .env 파일을 만들고 키를 입력한다. 했는데도 아래와 같은 오류가 나왔다. CompileDaemon -command="./main .env" \ -build="wire && swag init && go build -o ./main ./" \ -exclude-dir=docs \ -exclude=wire_gen.go \ -directory . /bin/sh: CompileDaemon: command not found make: *** [watch] Error 127 path를 설정해야한다고 함... cli 환경에서 vim ~/.zshrc 제일 하단에 필요한 path를 설정한다. 여기서는 go path export GOPATH="$HOME/go" export PATH="$..

🤼Git 2023.04.12

git push 하기 전 comit message 수정하기

1. git log로 히스토리를 확인합니다. git log ♣tip 확인하고 나올때는 :wq를 입력 2. 고치고 싶은 커밋이 위(HEAD)에서부터 어디에 위치한지 확인합니다. git rebase -i HEAD~3 → 위에서 3번째 커밋을 수정하고 싶다! 3. 수정하고 싶은 커밋의 pick을 reword로 수정합니다. ♣tip 수정은 i로 시작하고 수정완료시 esc를 누르고 :wq를 입력 4. reword를 입력했던 부분의 커밋 내용이 나오는데 여기서 수정할 수 있습니다. ♣tip 수정은 i로 시작하고 수정완료시 esc를 누르고 :wq를 입력 위의 내용은 push 하기 전 상태의 commit message 수정할 수 있는 방법입니다. ♣tip 마지막 Commit 메시지 수정하는 방법은 아래 명령어로 간단하..

🤼Git 2023.03.29

내가 써본 git 명령어 (계속 추가중..)

git branch -r 👉 clone 받은 레파지토리의 전체 브랜치 확인하기 git switch origin/[브랜치명] 👉 원하는 브랜치로 이동하기 (checkout이 switch로 바뀜) git switch -c [새로운 브랜치명] 👉 새로운 브랜치 만들고 바로 거기로 이동하기 git branch -d [브랜치명] 👉 원하는 브랜치 삭제하기 (원 브랜치과 비교해서 변경사항이 없을때만 가능하다. ) 삭제하려는 브랜치에서 사용 불가! 다른 브랜치에서 삭제가능 git branch -D [브랜치명] 👉브랜치를 강제로 지우기 삭제하려는 브랜치에서 사용 불가! 다른 브랜치에서 삭제가능 git branch -m [브랜치명] 👉브랜치 이름 변경 이름 변경하려는 브랜치에서 사용!! git mv [기존폴더명] [임시..

🤼Git 2023.03.06

private repository 작업 내역 잔디 표시하기

어느날 나의 github 잔디를 확인하는데 잔디가 텅텅 비어있는 것을 확인했다. 초반은 그렇다고 쳐도 8~9월은 프로젝트 때문에 매일매일 push를 했던 상황인지라 정말 내 눈을 믿을 수 없었다... 그 프로젝트 레파지토리가 private으로 설정되어 있어서 그런건가? 하고 다른 분들의 깃헙에 갔는데 다른 분들은 private repository에 commit 했다는 기록이 뜨고 잔디도 다 심어져 있었다. 그런데 나는 왜..? (해당 repository는 삭제 되지 않았다!) 그래서 알아보니 github 에서 간단하게 설정하면 된다! contribution settings에서 private contributions를 클릭하면 비공개 레파지토리에 커밋한 기록도 다른 사람들에게 다 보이게 된다. 참고로 그 ..

🤼Git 2022.09.13

github 레파지토리를 새로 팠다면?

git repository를 만들다가 공부한 내용을 정리합니다. github 레파지토리를 새로 팠다면? 1. 로컬 환경에서 github에서 만들어둔 repository 이름과 동일한 폴더를 만든다. (mkdir ~) 2. 그 안에서 만들 파일을 생성한다. ( CRA ) 3. 제일 상위 폴더에서 git init을 하고 push를 한다. echo "# -" >> README.md git init git add README.md git commit -m "first commit" git branch -M main git remote add origin git@github.com:~~~/___.git git push -u origin main 내가 만들 레파지토리 파일에는 git init을 해서 .git을 만들..

🤼Git 2022.09.13

TIL) 깃 브랜치 만들고 push 하기

레파지토리 생성 후 클론 받아온다. (현재 브랜치는 main 밖에 없음) git checkout -b dev // dev라는 브랜치 만들기 git add. git push origin dev // dev에 현재 상태 푸쉬함 (여기서 commit 안한 이유가 그냥 브랜치만 생성하려고) 이 후에 코드를 수정하거나 추가한다. 레파지토리 setting에 들어가서 Branches에서 디폴트 브랜치를 dev로 바꿔주면 더 안전하게 푸쉬 가능! git add . git status // 코드 수정하거나 추가한 내용이 나온다. git commit -m "feat: html 추가" git push origin dev // dev 브랜치에 푸쉬함 git checkout -b min // min라는 브랜치 만들기 git a..

🤼Git 2022.08.24

TIL) 터미널로 접근하는 깃, 명령어 정리

mkdir ~/Desktop/codestates 👉Desktop 파일안에 codestates 파일을 만드세요. cd ~/Desktop/codestates 👉codestates 파일 안으로 들어가세요. mkdir my-app 👉my-app 파일을 만드세요. cd my-app 👉 my-app 파일로 들어가세요. touch index.html style.css 👉 index.html, style.css 파일을 만드세요. ls 👉현재 폴더에서 모든 폴더와 파일을 보여주세요. index.html style.css 👉touch 명령어로 만든 index.html, style.css이 있습니다. git init 👉 작업공간에 local Git repository를 생성합니다. **git clone 시 git in..

🤼Git 2022.05.22

TIL) 깃

[목표] 로컬 Git 리포지토리를 직접 생성할 수 있다. staging area의 개념에 대해서 이해하고 git add로 staging area에 변경한 코드를 추가할 수 있다. git commit 으로 자신이 작업한 결과물을 기록할 수 있다. 로컬 Git 리포지토리란? 로컬 Git 리포지토리는 자신의 컴퓨터(로컬 환경)의 작업 공간에 위치한 Git 리포지토리이다. 컴퓨터 하드 드라이브에 원하는 디렉토리로 이동해서 로컬 Git 리포지토리를 추가하면 해당 디렉토리의 파일 변화를 감지할 수 있다. 반대로, Github에서 생성한 리포지토리는 원격(remote) Git 리포지토리라고 부른다. 내 컴퓨터 상에는 없지만, 원격에 존재하는 리포지토리이다. 로컬 Git 리포지토리: 내 컴퓨터의 저장소, 내 개인 전용..

🤼Git 2022.05.19