Git - git 의 기본 사용법과 원리
2022. 10. 11. 22:57
Git
git 이란? Git is a free and open source distributed version control system designed to handel everything from small to very large projects with speed and efficiency. Staging Area 란? > git add 파일이름 : Staging Area에 파일 추가 commit 하면 Staginf Area 에 있는 파일들이 Repository 에 저장 Staging Area 관련 명령 도움말 > git 명령어 -h : 명령어에 대한 도움말 > git 명령어 --h : 자세한 도움말 > git --help : 모든 도움말 Staging Area 에 추가 > git add 파일이름 > g..
Git - 파일의 stage 상태와 unstage 상태
2022. 9. 29. 16:40
Git
stage, unstage 워킹 디렉터리에 있는 tracked 상태의 파일들은 스테이지 영역과 긴밀한 상관관계를 맺는다. 스테이지 영역으로 등록된 모든 파일은 untracked 상태에서 tracked 상태로 변경되고, 스테이지는 워킹 디렉터리 안에 있는 파일들의 추적 상태를 관리하는 역할을 수행한다. 스테이지 영역은 파일을 stage 상태와 unstage 상태로 구분한다. 깃이 변화 이력을 기록하려면 파일들의 최종 상태가 stage 상태여야 한다. unstage 상태라면 파일에 변화가 있다는 것을 의미 하므로, 스테이지 영역에 있는 파일과 워킹 디렉터리 안에 있는 파일 내용에 차이가 있을 때는 unstage 상태가 된다. 또 넓게 보면 아직 스테이지 영역으로 등록하지 않은 워킹 디렉터리 안의 파일도 un..
Git - error:failed to push some refs to 에러
2022. 9. 18. 20:32
Git
에러 github에 내 Local 에 없는 파일이 있고, 내 파일을 push 할 면 발생하는 오류이다. ! [rejected] main -> main (non-fast-forward) error: failed to push some refs to 'https://github.com/jcy8206/usedHunter.git' hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: 'git pull ...') before pushing again. hint: See the 'Note about fast..
원격의 브랜치 다루기
2022. 7. 31. 16:42
Git
1. 로컬에서 브랜치 만들어 원격에 push 해보기 from-local 브랜치 만들기 아래 명령어로 원격에 push 아래와 같이 하면 대상을 명시하라는 메시지 나타남 git push 아래 명령어로 원격의 브랜치 명시 및 기본설정 git push -u origin from-local git push -u origin from-local 브랜치 목록 살펴보기 GitHub에서 목록 보기 아래 명령어로 로컬과 원격의 브랜치들 확인 git branch --all 2. 원격의 브랜치 로컬에 받아오기 GitHub에서 from-remote 브랜치 만들기 git branch -a에서 현재는 보이지 않음 아래 명령어로 원격의 변경사항 확인 git brahcn -a로 확인 git fetch 아래 명령어로 로컬에 같은 이름..
push와 pull
2022. 7. 31. 16:32
Git
1. 원격으로 커밋 밀어올리기(push) Leopards의 members에 Evie 추가 커밋 메시지: Add Evie to Leopards 아래 명령어로 push 이미 git push -u origin main으로 대상 원격 브랜치가 지정되었기 때문에 가능 git push GitHub 페이지에서 확인 GitHub의 파일들과 커밋 내역 확인 2. 원격의 커밋 당겨오기(pull) GitHub에서 Leopards의 members에 Dongho 추가 커밋 메시지: Add Dongho to Leopards 아래 명령어로 pull git pull 로컬에서 파일과 로그 살펴보기 3. pull 할 것이 있을 때 push를 하면? 로컬에서 Leopards의 manager를 Dooli로 수정 커밋 메시지: Edit Le..
원격 저장소 사용하기
2022. 7. 31. 14:24
Git
GitHub 레포지토리 생성 후 복붙 명령어 git remote add origin (원격 저장소 주소) 로컬의 Git 저장소에 원격 저장소로의 연결 추가 원격 저장소 이름에 흔히 origin 사용. 다른 것으로 수정 가능 git branch -M main GitHub 권장 - 기본 브랜치명을 main으로 git push -u origin main 로컬 저장소의 커밋 내역들 원격으로 push(업로드) -u 또는 --set-upstream : 현재 브랜치와 명시된 원격 브랜치 기본 연결 ⭐️ GitHub의 해당 레포지토리 페이지 새로고침하여 살펴보기 파일들 내용 커밋 내역들 원격 목록 보기 git remote 자세히 보기: git remote -v 원격 지우기 (로컬 프로젝트와의 연결만 없애는 것. ..
GitHub 시작하기
2022. 7. 31. 14:04
Git
1. 가입하고 토큰 만들기 Sign Up으로 가입 후 로그인 Personal access token 만들기 우측 상단의 프로필 - Settings Developer Settings Personal access tokens - Generate new token repo 및 원하는 기능에 체크, 기간 설정 뒤 Generate token 토큰 안전한 곳에 보관해 둘 것 토큰 컴퓨터에 저장하기 윈도우 가이드 Windows 자격 증명 관리자 Windows 자격 증명 선택 git:https://github.com 자격 정보 생성 사용자명과 토큰 붙여넣기 소스트리에도 추가 설정 > 계정 탭 > 추가 버튼 인증방식은 베이직, 프로토콜은 HTTPS로 설정 사용자명(GitHub 아이디)와 암호(토큰) 설정 아래의 두 스크..
충돌 해결하기
2022. 7. 30. 18:44
Git
상황 만들기 conflict-1, conflict-2 브랜치 생성 1. merge 충돌 해결하기 git merge conflict-1로 병합을 시도하면 충돌 발생 오류 메시지와 git status 확인 당장 충돌 해결이 어려울 경우 아래 명령어로 merge 중단 git merge --abort 해결 가능 시 충돌 부분을 수정한 뒤 git add ., git commit으로 병합 완료 2. rebase 충돌 해결하기 conflict-2에서 git rebase main로 리베이스 시도하면 충돌 발생 오류 메시지와 git status 확인 당장 충돌 해결이 어려울 경우 아래 명령어로 merge 중단 git rebase --abort 해결 가능 시 충돌 부분을 수정한 뒤 git add . 아래 명령어로 계속 ..
branch를 합치는 두 가지 방법
2022. 7. 30. 18:05
Git
서로 다른 브랜치를 합치는 두 방식 merge : 두 브랜치를 한 커밋에 이어붙입니다. 브랜치 사용내역을 남길 필요가 있을 때 적합한 방식입니다. 다른 형태의 merge에 대해서도 이후 다루게 될 것입니다. rebase : 브랜치를 다른 브랜치에 이어붙입니다. 한 줄로 깔끔히 정리된 내역을 유지하기 원할 때 적합합니다. 이미 팀원과 공유된 커밋들에 대해서는 사용하지 않는 것이 좋습니다. 1. merge로 합치기 dd-coach 브랜치를 main 브랜치로 merge main 브랜치로 이동 아래의 명령어로 병합 git merge add-coach :wq로 자동입력된 커밋 메시지 저장하여 마무리 소스트리에서 확인 💡 merge는 reset으로 되돌리기 가능 merge도 하나의 커밋 merge하기 전 해당 브..
여러 branch 만들어보기
2022. 7. 30. 14:14
Git
1. 브랜치 생성 / 이동 / 삭제하기 add-coach란 이름의 브랜치 생성 git branch add-coach 브랜치 목록 확인 git branch add-coach 브랜치로 이동 git switch add-coach checkout 명령어가 Git 2.23 버전부터 switch, restore로 분리 브랜치 생성과 동시에 이동하기 git switch -c new-teams 기존의 git checkout -b (새 브랜치명) 브랜치 삭제하기 git branch -d (삭제할 브랜치명) to-delete란 브랜치 만들고 삭제해보기 지워질 브랜치에만 있는 내용의 커밋이 있을 경우 즉 다른 브랜치로 가져오지 않은 내용이 있는 브랜치를 지울 때는 -d 대신 -D(대문자)로 강제 삭제해야 합니다. g..
프로젝트의 변경사항들을 타임캡슐(버전)에 담기
2022. 7. 28. 22:54
Git
변경사항 확인 git status 추적하지 않는(untracked) 파일: Git의 관리에 들어간 적 없는 파일 파일 하나 담기 git add tigers.yaml git status로 확인 모든 파일 담기 git add . git status로 확인 타임캡슐 묻기 아래 명령어로 commit git commit Vi 입력 모드로 진입 작업Vi 명령어상세 입력 시작 i 명령어 입력 모드에서 텍스트 입력 모드로 전환 입력 종료 ESC 텍스트 입력 모드에서 명령어 입력 모드로 전환 저장 없이 종료 :q 저장 없이 강제 종료 :q! 입력한 것이 있을 때 사용 저장하고 종료 :wq 입력한 것이 있을 때 사용 위로 스크롤 k git log등에서 내역이 길 때 사용 아래로 스크롤 j git log등에서 내역이 ..
Git의 관리에서 특정 파일/폴더를 배제해야 할 경우
2022. 7. 28. 22:25
Git
a. 포함할 필요가 없을 때 자동으로 생성 또는 다운로드되는 파일들 (빌드 결과물, 라이브러리) b. 포함하지 말아야 할 때 보안상 민감한 정보를 담은 파일 .gitignore 파일을 사용해서 배제할 요소들을 지정할 수 있습니다. .gitignore 형식 https://git-scm.com/docs/gitignore 참조
Git 설정 & 프로젝트 관리 시작하기
2022. 7. 28. 22:14
Git
Git 최초 설정 Git 전역으로 사용자 이름과 이메일 주소를 설정 GitHub 계정과는 별개 터미널 프로그램 (Git Bash, iTerm2)에서 아래 명령어 실행 git config --global user.email "(본인 이메일)" 아래의 명령어들로 확인 git config --global user.name git config --global user.email 기본 브랜치명 변경 git config --global init.defaultBranch main 프로젝트 생성 & Git 관리 시작 해당 폴더에서(VS Code 터미널 기본) 아래 명령어 입력 git init 폴더에 숨김모드로 .git 폴더 생성 확인 이 폴더를 지우면 Git 관리내역이 삭제됩니다. (현 파일들은 유지) 터미널에 아래 ..