✏️ Today I Learned (2022.04.08)
📖 온라인 강의
1. 깃(GIT)이란?
2. 깃 시작하기
3. 깃 가지치기
4. 깃 원격 저장소
📝 깃(Git)이란?
소프트웨어를 개발하는 기업의 핵심 자산인 소스코드를 효과적으로 관리할 수 있게 해주는 형상 관리 도구(무료, 공개 소프트웨어)
깃을 사용하는 이유
- 효율적인 협업
- 쉬운 버전 관리
깃의 특징
- 가지 치기와 병합
- 가볍고 빠르다.
- 분산 작업
- 데이터 보장
- 준비 영역
- 오픈소스
- Git 호스팅 서비스
깃 설치 (window)
1. 터미널 실행 후 git 입력 후 enter
위와 같이 실행되지 않으면 git 설치해야 함
2. https://git-scm.com/downloads 에 접속 후 각 환경에 맞게 설치
3. 터미널 실행 후 git --version 입력 후 enter 하고 버전이 나오면 정상 설치 완료된 거임
깃 초기 설정
1. 사용자 정보 설정
저장소에 코드를 반영할 때 등록될 사용자 정보 등록
git config user.name "hong"
git config user.hong@naver.com
2. 설정 정보 확인
앞에서 설정한 내용 확인 가능
git config --list
깃 저장소 생성
기존의 디렉터리를 git repository로 설정
Git init
📝 깃 시작하기
새로운 파일 생성
추가할 파일이 있다면 계속 추가할 수 있다.
git add hong.js
현재 폴더 전체를 추가할 수도 있다.
git add
Staging 상태 확인
git status 명령어로 Staging area의 어떤 파일이 변경되었는지 등의 파일의 상태를 확인할 수 있다.
Untracked files이라고 뜨는 파일은 add로 staging 되지 않은 파일들이다.
git status
저장소 반영
준비 영역에 있는 파일들을 저장소에 반영하기 추후에 반영 내용을 확인할 수 있도록 메시지를 넣어주자
git commit -m "Initial commit"
저장소 반영 내역
.git repository에 존재하는 history 확인
git log
add 명령 취소
git reset <file_name>
📝 깃 가지치기
Git Branch 생성
git branch like_feature
현재의 Branch 확인
git branch
Git Branch 전환
git checkout <branch_name>
git checkout <snapshot hash>
Git Merge
master Branch로 이동하여 sub Branch를 병합한다,
git checkout master
git merge like_feature
Commit graph 확인하기
git log --graph --all
Merge 된 Branch 보기
git branch --merged
Git Branch 삭제
git branch -d <branch name>
Git Merge conflict
Merge 한 두 Branch에서 같은 파일을 변경했을 때 충돌이 발생하게 된다.
1. git status명령어로 어느 파일에서 충돌이 발생했는지 확인
2. 충돌이 일어난 파일을 열어 본다.
3. 수정 완료 후 , <<<<< ======= >>>>>> 가 포함된 행을 삭제해준다.
4. git add, git commit 과정을 거쳐 다시 merge 해준다.
5. master Brancj의 변화를 지속적으로 가져와서 충돌이 발생하는 부분을 제거해야 방지할 수 있다.
📝 깃 원격 저장소
GIt 원격 저장소 받아오기
git clone <원격저장소의 주소>
git remote add origin <원격저장소의 주소>
연결된 원격 저장소를 확인
git remote
원격 저장소 살펴보기
git remote show origin
원격 저장소 이름 변경
원격 저장소 단축 이름을 origin에서 git_test로 변경
git remote rename origin git_test
원격 저장소 삭제
git remote rm git_test
원격 저장소에서 데이터 가져오기 + 병합(Merge)
git pull
원격 저장소에서 데이터 가져오기
데이터를 가져오지만 병합하지는 않는다 git log를 통해 변경된 파일을 확인하고 merge 해줘야 한다.
git fetch
git log origin/master
git merge origin/master
저장소 발행
로컬 저장소에서 작업한 내용을 원격 저장소에 반영(딴 사람이 push 한 상태엔 먼저 작업한걸 merge 하고 해줘야 한다.)
git push origin master
💡느낀 점
항상 Github Desktop을 사용해서 깃 헙에 push 할 줄 만 알았지 git에 대해서 깊게 공부해 본건 처음이었다.
오늘 하루도 성장하였다.
'엘리스 SW 엔지니어 트랙 2기' 카테고리의 다른 글
[TIL] 엘리스 SW 엔지니어 트랙 2기 day 07 (0) | 2022.04.18 |
---|---|
[TIL] 엘리스 SW 엔지니어 트랙 2기 day 06 (2) | 2022.04.12 |
[TIL] 엘리스 SW 엔지니어 트랙 2기 day 04 (0) | 2022.04.10 |
[TIL] 엘리스 SW 엔지니어 트랙 2기 day 03 (0) | 2022.04.10 |
[TIL] 엘리스 SW 엔지니어 트랙 2기 day 02 (0) | 2022.04.07 |
댓글