-
Git 기본 공부ReactNative_앱 2023. 3. 29. 16:50
git의 영역 세가지
(1) Working Directory (Local)
: 개인 코드 작성
(2) Staging 영역
: git add 를 통해서 수정된 코드를 올리는 영역
(3) Repository
: git commit 을 통해서 최종 수정본을 제출
Staging Area
:스테이징 영역은 작업 디렉토리와 git 저장고의 변경 이력 사이의 징검다리 역할을 한다.
작업 디렉토리->아직 커밋할 준비가 안 된 변경내용을 자유롭게 수정할 수 있음
스테이징 영역->커밋할 준비가 된 변경 내용이 git ㅓㅈ장소에 기록되기 전에 대가하는 장소
git add를 이용해서 현재 작업 디렉토리에 있는 내용을 스테이징 영역으로 이동시킬 수 있음
git commit 명령어가 변경 이력을 남길 사점에는 작업 디렉토리에 있는 변경 내용은 고려하지 않고, 스테이징 영역에 넘어온 변경 내용만 사용되기 때문에 이 두 개의 공간을 서로 햇갈려 하신다면 난감한 상황에 빠질 수 있습니다.
git add
:add는 commit 전의 임시 저장의 느낌이라고 생각하면 될 거 같음
(staging area에 추가하는거)
commit을 이용해서 명시적으로 기록을 남기기 전에는 아무리 add를 많이 해도 git 저장소의 변경 이력에는 영향 주지 않음
git add 파일 이름 // 특정 파일만
git add . //현재 디렉토리의 모든 변경 내용을 스테이징 영역으로 넘기고 싶을때
git add -A // 작업 디렉토리 내의 모든 변경 내용을 몽땅 스테이징으로 넘기고 싶을때
git status
:이건 작업 디렉토리와 스테이징 영역의 상태를 확인하기 위해서 사용함
$ git status On branch search3 Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: src/components/Control/Control.jsx modified: src/components/Input/Input.jsx modified: src/components/List/ListItem.jsx Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: src/components/Search/Search.jsx modified: src/components/Search/Search.stories.jsx Untracked files: (use "git add <file>..." to include in what will be committed) src/components/Search/useSearch.js
보통 이렇게 3개의 영역으로 이루어져 있음
- Changes to be committed: 이 영역은 스테이징 영역에 넘어가 있는 변경 내용을 보여줍니다.
- Changes not staged for commit: 이 영역은 아직 워킹 디렉토리에 있는 변경 내용을 보여줍니다.
- Untracked files: 이 영역도 아직 워킹 디렉토리에 있는 아직 한 번도 해당 Git 저장소가 관리한 적이 없는 새로운 파일을 보여줍니다.
git commit
:변경 사항에 대해서 버전(작업이 완결된 상태)을 만드는것
의미있는 변화에 대해 기록하는 것이 commit
변경괸 사항을 로컬 저장소(ex.내 컴퓨터)에 기록하는거
git push
:커밋은 로컬 저장소와 연결하여 사용하고 push는 원격 저장소와 상호 작용함
변경 사항을 깃허브와 같은 원격 저장소에 저장하는거
- 내 원격 리포지토리에 Fork
- clone 설정
- remote 설정
- branch 생성
- 수정 작업 후 add, commit, push (만일 나 뿐만 아니라 다른 기여자(팀원)이 소스를 수정했다면 fetch로 코드를 가져와 충돌을 해결)
- Pull Request 생성
- Merge Pull Request
- Merge 이후 동기화 및 branch 삭제
'ReactNative_앱' 카테고리의 다른 글
[React-Native] FlatList style적용 / View 내부 가로 배치/이미지 테두리 둥글게 (0) 2023.04.04 react-native library 변경시 (0) 2023.04.01 React-Native 앱 개발 (0) 2023.03.29 React 강의 정리 6강 (0) 2023.03.15 React 강의 정리(5강) (0) 2023.03.15