옥수수, 기록
git 에 대한 정리 본문
git 사용법
1. fork한 repo, local로 가져오기
- git clone
* git clone 과 git에서 zip 직접 다운로드의 차이
clone은 remote 연결이 자동으로 되어있고 zip은 x
zip으로 다운받으면 계속 파일, 다운로드 폴더 정리를 해줘야하지만 clone으로 하면 원하는 디렉토리에 remote repo에 있는 파일만 받을 수 있음
2. 작업중인 local directory를 git의 관리하에 두기
- git init
3. 작업물을 starting area에 두기
- git add <파일명>
4. staging area에 잘 등록되어있나 확인
- git status
5. commit 할 메세지 포함해서 commit 하기
- git commit -m ‘메세지’
6. commit 취소하기
- git reset HEAD^
7. local repo 하고 remote repo 연결 잘 되어있나 확인하기
- git remote -v
8. local-remote 연결 안 돼 있으면 연결해주기
- git remote add <앞으로 remote repo 주소대신 부를 이름(대부분 origin으로 지정)> <remote repo 주소(url)>
9. remote repo 확인
git remote —verbose
10. 타인의 repo에서 내 local로 받아오기(내용 자동으로 바뀌게 할 때는 pull, 안바뀌게 할 때는 fetch)
git pull <원격디렉토리 명> <branch 이름>
이하는 git 에 대해 이해한 내용 정리
- 일반 디렉터리와 깃 리포지토리와의 차이점
- 일반 디렉터리는 솔로 프로젝트같은 개인사용용으로 좋지만 협업하려면 파일을 계속 주고받아야 하는 애로사항이 있다. 그에 반해 깃 리포지토리는 일반 디렉터리에 있던 파일을 서버에 올려놓아 다른 사람이 접근하기 쉬워 협업하기 좋다.
- git staging area란?
- git init을 하고git add를 통해 파일을 git staging area에 추가할 수 있다. git init이란 현재 지정되어있는 폴더안에 local git repository를 생성해주는 명령어이다. git init 후 폴더내 파일을 git add <파일명.확장자> or git add . (전체선택)를 사용해 staging area에 추가해 줄 수 있다.
- git add와 git commit의 차이점?
- git add는 git init을 한 폴더내에 있는 파일을 staging area에 추가해주는 명령어이고
- git commit은 그 넣어둔 파일을 remote repo에 올릴 결심을 하고 올리는 파일의 용도를 적어두는(-m) 행위이다.
- git commit으로 로컬 깃 리포지토리에 코드 변경점을 기록할 수 있다.
- git commit -m “기록하고싶은내용”로 기록할 수 있다.
- commit의 원칙 두가지
- commit은 작은 단위로 자주 하자
- 기록이 상세하게 되어있으면 누가 해당 코드를 수정했는지 쉽게 파악 가능
- commit 메세지는 짧고 간결하게 사실적으로 작성
- 동료 개발자가 참고할 수 있어서 짧고 간결하게 작성
- commit은 작은 단위로 자주 하자
- git clone이란?
- 다른 사람의 repo를 fork 후, git clone <fork한 repo주소> 를 하면 쉽게 현재 폴더로 remote repo(forked)에 있던 파일들을 받아올 수 있다.
- git pull과 git push에 대한 이해
- git push는 내 local repo에서 remote repo로, staging area에서 commit되어있는 파일들을 업로드하는 것
- git clone은 local repo와 remote repo의 내용이 일치해져 작업하던 내용이 날아가지만 git pull은 remote repo의 내용과 local repo의 내용이 병합(merge)돼 최신코드로 업데이트가 된다.
- pull request 는 수정한 파일들을 업로드한 remote repo(forked)를 원래 repo로, 이렇게 파일 변경했으니 반영해주세요~ 하고 요청하는 것
- git pull과 git push로 로컬 깃 리포지터리와 원격 깃 리포지토리의 내용을 쉽게 주고받을 수 있다.
'CodeStates' 카테고리의 다른 글
기술 면접 관련 (0) | 2022.11.16 |
---|---|
12일차) JS 원시 자료형 & 참조 자료형 (0) | 2022.11.07 |
typeof 연산자 (0) | 2022.10.21 |
Comments