사전 정보
- Git에서 코드를 저장하는 공간을 리포지토리라고 함
- 로컬 깃 리포지토리 : 자신의 컴퓨터 작업 공간(local)에 위치한 리포지토리
- 원격 리포지토리 : GitHub등 원격(remote) 공간에 위치한 원격 리포지 토리
- 로컬 환경에 있는 디렉토리에서 로컬 Git 리포지토리를 추가하면 해당 디렉토리의 파일 변화를 감지 할 수 있음
[파일의 변화를 기록하는 절차]
1. 코드를 저장할 디렉토리를 만들고 해당 디렉토리에 로컬 Git repository를 생성 (git init)
2. 코드를 작성하고 저장하는 공간, 작업 공간(work space)의 파일 및 디렉토리를 git의 관리 하에 있는 상태로 올려줄 수 있음. (git add) 이 영역이 staging area임
3. staging area의 파일은 commit이 가능함
commit으로 local Git repository에 내 코드를 기록할 수 있음 (git commit)
1. git init
: 작업 공간에 local Git repository를 생성함
2. git add
: Untraked files를 Staging area로 추가해서 Git의 관리하에 둠
- 로컬 환경에 있는 디렉토리에 Git 리포지토리가 생성되었기 때문에, 이제 생성한 파일들의 변경사항을 Git으로 관리 할 수 있음
- 각각의 파일에 코드를 작성한 후, 이 코드를 하나로 모아두는 과정을 거치게 되는데 이 공간을 staging area라고 함
git add <경로명> : 내 로컬의untracked file을 Git의 관리 하인 staging area로 추가 할 수 있음
git add . : staging are에 모든 파일을 한번에 추가 할 수 있음
3. git status
: staging area로 잘 옮겨졌는지 확인하기 우해서 git satus 명령어 사용.
- 변경이 되었으나 staging area로 옮겨지지 않은 파일은 빨간색 글씨로 표시
- 변경 사항이 잘 staging area 로 옮겨졌다면 파일명이 초록색으로 표시
4. git commit
- commit
-- staging area의 코드 묶음을 저장하기로 결심하고 (git commit)
-- staging area 코드의 용도를 적어두는 행위 (커밋 메시지 -m "commit message" / 예. git commit -m 'index.js 수정)
- 늘 commit하기 전에 git status 로 staging area 상태를 확인하는 것이 좋다
- commit하고자 하는 파일 모두가 staging area에 들어 있을 경우 아래 명령어를 입력 / "" 내부에는 라벨링 하듯 staging area에 모아놓은 변경 사항에 대한 설명 작성
git commit -m "<commit Message>"
ex) git commit -m "나만의 아고라스테이츠 html, css 완성"
- staging area가 빈 상태가 되면 commit에 성공
5. git reset
- 수정을 해야하는데 불필요한 커밋을 또 하고 싶지 않을 때 (git reset HEAD^ | git reset HEAD1^ | git reset HEAD~1 )
6. git log
- 내 커밋을 확인하는 명령어
[애플리케이션을 제작하기 위해 원격 Git 리포지토리를 다루는 과정]
1. GitHub에서 원격 리포지토리 생성
2. 로컬 리포지토리에서 원격 리포지토리 git url 등록 (git remote add)
3. 로컬 Git repository에 기록한 내역을 원격 Git repository에 push함 (git push)
1. GitHub에서 원격 리포지토리 생성
- 이름이 가능하면 로컬 리포지토리 디렉토리 이름과 같게 설정하면 좋다
- 만약 오픈소스 코드가 아니고, 공개하지 않는다면 private를 체크하고 생성하면 됨
- owner가 자신의 아이디인지 확인
2. git remote
: 원격 리포지토리를 다루기 위한 git 명령어
2.1 git remote add <name> <URL>
: git remote add는 로컬 리포지토리에서 원격 리포지토리 주소를 등록하는 명령어
<name> : 앞으로 로컬 리포지토리에서 원격 리포지토리 주소를 대신할 이름 (ex: origin)
<URL> ; 원격 리포지토리 주소 (ex: git@github.com:codestages-seb/agora-states-fe.git)
'💻 > [과제]' 카테고리의 다른 글
[과제] pagination 구현 (0) | 2022.11.14 |
---|---|
[과제] 나만의 아고라 스테이츠 만들기 (0) | 2022.11.12 |
[과제] 유효성 검사 (0) | 2022.11.09 |
[과제] JavaScript Koans (0) | 2022.11.07 |
[과제] 짝수 생성기 (0) | 2022.11.02 |