티스토리 뷰
Local Repository(로컬저장소)
Remote Repository(원격저장소)
push & pull request
: public 프로젝트에 버그 수정, 기능 추가 요청
pull
: public 프로젝트에서 새로 업데이트된 내용을 받음
깃헙 푸시 과정 요약
(init > )add > commit > (remote 확인(-v) >) push
1. 깃 저장소 만들기
git init
: 코드를 저장할 디렉토리 내부에 GIT repository를 생성
ls -al를 입력하여 숨겨진 git폴더를 확인할 수 있음
2. 깃 저장소(staging area)에 파일 추가하기
git add <파일명/경로명>
: 코드가 변경된, 해당 파일 혹은 해당 위치에 있는 모든 파일을 staging area에 추가
git status
: staging area에 추가된 파일과 변경사항이 있는데 추가되지 않은 파일 확인
git reset 파일
: staging area에서 제거
git restore 파일
: 변경사항 폐기(discard change)
3. 커밋하기
git commit -m '기록할 메세지'
: local git repository에 내 코드를 기록, 커밋이 완료되면 staging area는 빈 상태가 됨
git log
: 깃 커밋로그 확인
git reset
: 커밋 되돌리기
local이거나 원격저장소가 공유되지 않은 상태일 때 가능
git reset HEAD^ // 바로 앞으로 돌아감
git reset HEAD~2 // 두 단계 이전으로 돌아감
git reset --hard // 돌아간 커밋 이후 변경이력 삭제, 코드도 삭제
git reset --mixed // 변경이력 삭제, 코드는 남아있음 unstage(다시 add해줘야함)
git reset --soft // 변경이력 삭제, 코드는 남아있음 stage
- commit은 작은 단위로 자주하는 것이 좋음
- 코드를 잘못 수정한 경우 이전 기록을 더 쉽게 복원할 수 있음
- 해당 코드를 누가 수정했는지 쉽게 파악
- merge, rebase 사용을 편리하게 함
- commit message는 짧고 간결, 사실적으로 작성(효율적이게 수정처럼 모호한 표현X 사실 여부 판단 가능하게)
- 정확한 기술 용어 사용
4. 푸시 전 원격 저장소 연결/확인하기
① 새로운 원격저장소(Repository)에 푸시하고 싶은 경우
github에서 Remote Repository 생성(왼쪽 상단 New)
git remote add <name> <url>
: 로컬저장소와 원격저장소를 연결
name = 원격저장소를 지칭할 이름
url = 원격저장소url
git branch -M <브랜치이름>
: 브랜치 생성
② 기존 원격저장소에 푸시하고 싶은 경우(fork한 경우)
git remote -v
: 연결된 원격저장소 확인
* fork
: 기존에 잘 만들어진 프로젝트(public)에 변화를 주거나 새로운 것을 시도해보기 위해 repository를 복사하는 것(기존 원격 저장소> 내 원격 저장소)
기존 프로젝트에 영향을 미치지 않음
(라이센스도 함께 복사되기 때문에 공개되어 있고 라이센스 명시가 되어있는 프로젝트의 경우 라이센스를 지키면 문제 없음)
5. 원격저장소에 푸시하기
git push <name> <branch>
: 로컬 저장소에 기록한 커밋을 원격저장소에 반영
- name 원격저장소 이름
- branch 커밋을 저장할 브랜치(기본 main)
2022.11.14
S1U12 진행중
'코드스테이츠(SEB_FE_42)' 카테고리의 다른 글
[Web API] Storage(local, session) (0) | 2022.11.15 |
---|---|
[JS] 문자열 UTC시간을 현지 시간으로 변환 new Date(날짜).toLocaleString() (0) | 2022.11.14 |
[DOM] 메서드 (0) | 2022.11.11 |
[HTML, JS] DOM (0) | 2022.11.10 |
[JS] TDD, 얕은복사, 깊은복사, shorthand 등 (0) | 2022.11.10 |