일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 노마드코더
- .env
- 그래머인유즈
- 실행컨텍스트자바스크립트
- 영어공부
- useRef역할
- 실행컨텍스트란
- html
- CLI
- state hook
- npm 에러
- 로컬상태
- 실행컨텍스트콜스택
- 실행컨텍스트 실행과정
- CORS
- 영어
- 전역상태
- 실행컨텍스트 면접
- 실행컨텍스트스택
- 고차함수
- 알고리즘
- .current
- 객체
- styled-component
- Mini Node Server
- css
- 개발공부
- 실행컨텍스트 동작과정
- 개발일기
- Block
- Today
- Total
오늘도 삽질중
Git 혼자 작업 본문
<목차>
- Fork
- clone
- git init
- git status
- git add
- git commit
- git reset HEAD^
- git push <origin> <branch>
- git log
- pull request (PR)
👊 Fork
- 다른 사람의 remote repository에서 내 remote repository로 가져올때 Fork한다.
👊 clone
- 내 remote repository에서 내 컴퓨터(local repository)로 가져오기 위해 clone한다.(내 컴퓨터로 복사한다고 생각)
git clone <포크한 내 repository주소>
👊 git init
- 내 컴퓨터의 작업 공간(work space)에서 작업에 들어간 파일들을 git의 관리 하의 상태로 만들어준다.( 깃허브에서 포크-클론 해준거는 이미 깃의 관리 하의 상태이므로 생략가능하지만, 내가 직접 내 컴퓨터에서 만든 파일이라면 git init을 꼭 해줘야 한다.
git init
👊 git status
- 파일이 어떤 상태에 있는지, 그리고 해당 파일에 대해 어떤 행동을 할 수 있는지 알 수 있다.
<예시: untracked files목록을 통해>
git status 명령어를 통해 staging area와 untracked files목록에 어떤 것들이 있는지 확인 할 수 있다.
두 개의 파일을 수정을 했다. (modified) 그런데 changes not staged, 즉 staging area에는 들어가지 않았다. 여기서 두 가지 선택이 있는데(위에 터미널에서 빨간색으로 수정되었다는 표시 위에 use-라인을 읽으면 앞으로 어떻게 해야하는지 알 수 있다.)
- staging area에 들어가게 해주려면
git add <파일이름>
git add . // 수정한 파일 모두 staged시키는 것임
- 수정된 파일을 폐기하려면 (discard change)
git restore <폐기할 파일이름>
수정한 사항을 restore 하자 마자 내 working space에서도 사라졌다.
다시 git status를 해보면
👊 git add
- untracked files를 staging area로 추가해서 Git의 관리하에 둠. commit을 하기 위해서는 git의 관리 하에 있는 영역 즉, staging area에 놓아야 한다. git add를 했을 때 터미널 창에는 아무 변화가 없다.
git add <파일이름>
git add . // 수정한 파일 모두 staged시키는 것임
git add를 한 후에 취소를 하고 싶다면 (staged->unstaged), git status 명령어를 친 후 어떻게 해야할지를 보자(use- 부분을 참고)
👊 git commit
-remote repository들어가려면 꼭 commit을 해야한다. 변경 사항을 저장하기위함이기도함
git commit -m"" // ""안에는 수정한 파일이름(내맘대로)
cf) commit 기록은 위의 그림처럼 날짜, commit한 사람, commit메시지가 모두 기록된다.
👊 git reset HEAD^
-아직 Remote Repository에 올라가지 않은 commit이면 reset명령어로 취소할 수 있다.
(git reset했을때 터미널 창에는 변화가 없다.)
git reset HEAD^
git reset HEAD^^
git reset HEAD^^^
👊 git push <origin> <branch>
- 현재 Local Repository에 저장되어 있는 commit 기록들을 내 Remote Repository에 업로드 해줘야 한다. (업로드를 해줘야 pull request 할 수 있음)
// 보통 이렇게 입력을 해준다.
git push origin master/main
// 만약 내 remote와 연결이 되어있는 상태라면
git push
👊 git log
현재까지 commit된 내역들을 터미널 창에서 확인할 수 있다.(이 터미널 창을 종료하려면 q)
git log
👊 pull request (PR) (이건 GUI로 한다)
- 내가 push한 변경 사항에 대해서 다른 사람들에게 알리는 것 (터미널에서 안함, 깃허브GUI에서 함)