git (기본 정리 01)
git status
#작업 디렉토리(working directory)와 스테이징 영역(staging area)의 상태를 확인하기 위해서 사용합니다.
#응답: to be commited → add가 잘 되었음, 커밋하면 됨
working tree clean → 커밋이 잘 됨 → remote로 push하면 됨
git init
#현재 프로젝트 버전 관리(변경 사항 추적)를 시작
git add .
#:모든 파일의 변경 사항 의미(지양)
git add 파일명 #지향
#staging: 다음 커밋까지 변경을 모아 놓기 위해서 사용
git commit →vi로 넘어가서 첫 줄에 떠있는지 확인하고 남기기 (지향)
git commit -m ‘수정사항 명시’ (지양 , 자체적으로 표기한 것이 없어질 수 있음)
#commit - 버전관리
#tip) 커밋은 실행 가능 상태 단위로 관리해야한다.
git log : 커밋 기록 확인
git lg : 간단한 기록 확인
#되돌리기 https://gist.github.com/johanmeiring/3002458
-
최신 커밋의 상태로 돌아감 -워킹디렉토리 되돌리기
git restore helloworld.py : 리스토어는 기록 안남음
-
커밋 메세지 바꾸고 싶으면 git commit --amend
-
커밋 자체를 취소하고 싶을때
리셋(지양): 이전 커밋 있었다는 사실 없어짐 vs 리버트: 실수를 알리고, 수정
Best case: Revert
ex) 현재 HEAD에서 직전의 3개의 commit을 순서대로 거슬러 올라가 해당 내역에 대해
commit, push 수행
$ git revert --no-commit HEAD~3..
$ git commit
$ git push origin
git revert --no-commit HEAD~3.. → 3단계 커밋전으로 돌림 → .. 은 순차적으로를 의미
git commit 후 메세지작성
//로컬
//원격
#원격 저장소 푸쉬 #주의:배시에서 폴더 위치 확인
git remote : 연결된 원격 저장소 확인
git remote add <저장소 별칭: 일반적으로 origin> <저장소 주소> : 원격 저장소 연결
예시 : git remote add origin [깃레포지토리 주소]
git push origin main : 원격 저장소 푸쉬
git push -u origin 새 브랜치명 : 새로운 브랜치로 푸쉬
#main or master 의미 : main이 default branch로 사용된다. (master는 과거에 디폴트 브랜치로 사용됨)
#원격 저장소 복제
git clone <저장소 주소><복사해올 디렉토리 명(생략가능)>
dir : 폴더 리스트 확인
#원격 저장소에서 (디폴트 브랜치로) 가져올 때
git pull origin main #원격 저장소가 연결되어 있어야 됨
git branch
#초기 프로젝트(폴더) 생성 경로
git init
git branch :브랜치 목록 확인
git branch <이름> :브랜치 생성
#각 브랜치에서 생성한 내용은 병합하지 않은 경우 독립적이다.
이전에 생성한 sigin폴더와 파일은 사라짐 (즉 영향을 주지 않음)
git switch <브랜치 이름> : 작업 브랜치 변경
#git branch 삭제
git branch -D <브랜치 명>
#원격 저장소의 branch 확인
git branch -r
#원격 저장소 branch 가져오기
git branch -t [원격 저장소의 branch 이름]
원격 저장소의 branch를 가져오면서 해당 branch로 이동한다.
git checkout -b yellow
git branch -a
#각 브랜치 별 원격 저장소 업로드
git push origin <현재 브랜치 명>
#원격에 없던 브랜치로 푸쉬
git push -u origin [브랜치명]
#github에서 직접 병합 - pull request
- git merge -(+ conflict 예시 - 네트워크 탭 확인)
같은 파일명 hello.py 에 대해 내용이 다른 브랜치에서 각각 반복문, 조건문이다.git merge [합칠 브랜치명] : 커밋한 내용에 대해 합친다. 1. merge conflict 문제:
브랜치를 머지할때 어떻게 될까?
컨플릭트 임 -> 당황하지 말고 파일을 확인하고 그 파일을 에디터로 들어가서 내용을 확인해서 중재할 것
→ git status : unmerged paths, both modify 뜨면 → 최종적으로 add
→ git commit → 위에 써진 글 그대로 두고 : 아래에 merge conflict 상황 해결 방법 및 반성문 쓰기 → git push origin main
네트워크 탭에서 확인:
깃헙은 메인(로컬)에서 메인(리모트)으로 받은거라 중간에 생성했다가 지운 브랜치의 상태를 모른다.
git push -u origin repeat-hello : 리모트에 없던 브랜치를 쓸때 u 업스트림셋을 해줘야 → 생김
- Git ignore git ignore 설정을 도와주는 사이트 : https://www.toptal.com/developers/gitignore node, npm, react 등 조건 검색 → 복사한 파일을 작업 폴더에 넣어준다.
Author And Source
이 문제에 관하여(git (기본 정리 01)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yeunng1/git-기본-정리-01저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)