반응형
Git-Github 기본 용어
branch: 깃의 작업 영역(-a -> 깃 원격 저장소(github) remote의 branch까지 보여줌
main: 깃의 기본 브랜치(예전에는 develop, master) -> local, remote
HEAD: 현재 작업 브랜치의 위치
remote/origin: 깃의 기본 원격 브랜치의 alias
clone: git remote의 처음 파일들을 local pc에 복제하는 명령어
pull: git의 remote위치에 있는 가장 최신의 commit 및 push한 내용들을 가져오는 명령어
linux 명령어
- li : 파일 리스트 (-al 숨김 파일 및 폴더 까지 보여줌)
- cd : change directory : 폴더 이동
Git staged
Git 필수 명령어
0. github 연결 초기 세팅
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin "[remote repository url]"
git push -u origin main
1. config 설정, commit
# 브랜치 생성 후 전환하기
git checkout -b test
# 브랜치 전환하기
git checkout test
# 이전 브랜치로 이동하기
git checkout -
# 변경사항에서 탈출할때
:q 엔터
# 설정 명령
git config [설정키] [설정값]
git config user.name teacher
git config user.email teacher@naver.com
# 글로벌 설정하면 하위 폴더 전체 설정 가능
git config --global user.name teacher
git config --global user.email teacher@naver.com
# 환경변수(설정키) 설정값 확인
git config --listls
# 커밋한 내용 모두 출력, 숫자 붙이면 갯수만큼 출력
git log
git log -숫자
git log --pretty=oneline
# 깃 버전 관리 상태 확인
git status
# 새로 생성된 파일을 커밋할 수 있도록 Staged Area 로 변경
# Untracked -> Staged
git add [파일명]
# 현재 디랙토리(폴더)의 모든 새로 생성된 파일을 commit 할 수 있도록
# Staged Area에 등록하는 명령어
git add .
# 깃 로컬에 반영 (스냅샵, 해시생성)
git commit -m '메시지 내용'
# git add + git commit -m 기능
# Untracked 는 적용 안됨, 따로 add 해줘야한다
git commit -a -m '메시지 내용'
# 커밋 메세지 변경 --amend
# push 전에는 최신의 커밋 메세지 변경됨
# push 후에는 pull받아야 충돌나지 않음
# 기존 커밋이 남고 머지된다.
git commit --amend -m '변경할 메시지 내용'
# 로컬 작업한 내용인 commit의 내용을 원격저장소에 반영
git push
# Staged Area에 있는 파일명을 Untracked 상태로 변경
git restore --staged [파일명]
# 버전관리 되돌리기 명령어
# 커밋을 지우는 명령어(push 하지 않은 상태에서 권장)
git reset
# 마지막 커밋을 스테이징 하기 전 상태로 되돌리는 명령어
# 최근 1개 커밋 삭제 + 변경된 파일 unstaging 상태로 유지
git reset HEAD^
# 변경된 파일도 함께 되돌림.
git reset --hard HEAD^
# 커밋을 하고 push를 한 상태에서 또다른 커밋을 만들어 push를 할때 사용
git revert
2. branch, merge
# 로컬에 있는 모든 브랜치를 보여준다
# 원격에 있는 브랜치는 체크아웃을 해야 받아온다
git branch
# 로컬 브랜치를 만드는 명령어
git branch '브랜치 명'
# 브랜치는 폴더별로 생성할 수 있다
git branch [폴더명]/[브랜치명]
# 원격 브랜치 리스트 조회
git branch -r
# 로컬 및 원격 브랜치 리스트를 전부 조회
git branch -a
# 로컬 브랜치 삭제
git branch -d '브랜치 명'
# 해당하는 브랜치로 작업 영역을 변경된다.
# > HEAD 가 해당 브랜치의 최신 커밋으로 이동
git checkout '브랜치명'
# 커밋 해시값으로도 변경 가능
git checkout '커밋해시값'
# 마지막 커밋했을 때의 파일 상태로 되돌림(변경사항폐기)
git checkout [파일명]
# 브랜치를 생성해서 체크 아웃
git checkout -b '브랜치명'
# 원격에 적용하려면 push 해야함
git push # 하면 fatal로 명령어를 추천해준다
git push --set-upstream origin '브랜치명'
# remote 브랜치를 로컬에 브랜치를 생성해서 가져온다
git checkout -b [브랜치명] [remote브랜치명]
# remote에 있는 브랜치명을 로컬 브랜치로 만들 수 있는 명령어
git checkout -t [remote브랜치명]
# 이전 브랜치로 이동하기
git checkout -
# 변경사항에서 탈출할때
:q + Enter
# 원격에서 브랜치를 삭제해도 로컬에는 반영되지 않는다
# pull 은 브랜치에 해당하지 않는다.
# 해당 브랜치에서 머지할 브랜치 명
git merge [병합할 브런치]
# conflict 났을 경우 > 해당 파일 수정하고 add> commit
# git 원격 저장소 관련 명령
# 원격 저장소 정보 보기
git remote -v
git remote add origin [원격 저장소 주소, repostory]
git push
# 원격 저장소의 최신 커밋을 다운받고 로컬과 머지
git pull
# 원격 저장소의 최신 커밋을 다운받고 머지하지 않음
git fetch
반응형
'Study > 기타' 카테고리의 다른 글
[네트워크] 이더넷과 CSMA/CD (1) | 2023.11.13 |
---|---|
[리눅스] DNS 서버 설정 (0) | 2023.11.08 |
[리눅스] FTP 서버 설정 (1) | 2023.11.08 |
[CSS]CSS의 display 속성 (0) | 2023.10.18 |
[Git] 기본 정리 (0) | 2023.09.13 |