지난번에 이어서 <Do it! 지옥에서 온 관리자 깃&깃허브 입문> 스터디를 진행하겠습니다.
2020/11/23 - [IT] - [스터디노트 - 1일차] Do it! 지옥에서 온 관리자 깃&깃허브 입문 / 1장~2장 / 깃 기초
오늘 주제는 깃과 브랜치, 깃허브로 백업하기 입니다.
3장. 깃과 브랜치
03-1. 브랜치란?
- 깃으로 버전 관리를 시작하면 기본적으로 master라는 브랜치가 만들어짐
- 브랜치는 커밋을 가리키는 포인터
03-2. 브랜치 만들기
새 브랜치 만들기
git branch
git branch apple
git branch # 만들 때, 확인할 때 모두 사용하는 명령어
git log # HEAD는 작업 중인 브랜치를 가리키는 포인터
git branch google
git branch ms
브랜치 사이 이동하기
git checkout apple # 다른 브랜치로 이동
03-3. 브랜치 정보 확인하기
브랜치 사이의 차이점 알아보기
git log master..apple # master 브랜치와 apple 브랜치 사이의 차이점 확인 (master 브랜치 기준)
git log apple..master # apple 브랜치 기준으로 비교
03-4. 브랜치 병합하기
서로 다른 파일 병합하기
git checkout master
git merge o2
git log --oneline --branches --graph
빨리 감기 병합(fast-forward merge): master 브랜치에서 브랜치 분기 후 master 브랜치에 아무 변화가 없을 때 병합하는 경우
# 브랜치 병합 시 편집기 열리지 않고 깃에서 지정하는 커밋 메시지 그대로 사용하기
git merge o2 --no-edit
# 커밋 메시지 추가하고 싶을 때
git merge o2 --edit
병합이 끝난 브랜치 삭제하기
git branch
git checkout master
git branch -d o2 # 브랜치 삭제
# master에 병합하지 않은 브랜치는 삭제 시 오류 발생. 이 때는 -D 옵션으로 삭제 가능
# 삭제한다고 해도 깃 흐름 속에 감추는 개념. 다시 같은 이름으로 브랜치를 만들면 예전 작업 내용이 나타남
03-5. 브랜치 관리하기
브랜치에서 checkout과 reset의 작동 원리
git log --oneline --branches
git reset 6c9749d # c2 커밋의 커밋 해시 입력
git log --oneline --branches --graph
수정 중인 파일 감추기 및 되돌리기
git stash list
git stash pop # 가장 최근 항목 되돌리기
git status
# stash 목록에 저장된 수정 내용을 나중에 또 사용한다면
git stash list
git stash apply
git stash list
# 가장 최근 항목 삭제
git stash list
git stash drop
git stash list
4장. 깃허브로 백업하기
04-1. 원격 저장소와 깃허브
지역 저장소 (local repository)
원격 저장소 (remote repository)
깃허브로 할 수 있는 일들
- 원격 저장소에서 깃을 사용할 수 있음
- 지역 저장소를 백업할 수 있음
- 협업 프로젝트에 사용할 수 있음
- 자신의 개발 이력을 남길 수 있음
- 다른 사람의 소스를 살펴볼 수 있고, 오픈 소스에 참여할 수 있음
04-2. 깃허브 시작하기
깃허브 (http://github.com/) 가입하여 사용하는 내용이라 별도 정리는 생략합니다.
04-3. 지역 저장소를 원격 저장소에 연결
지역 저장소 만들기
git init loc-git
cd loc-git
vim f1.txt # a 저장
git add f1.txt
git commit -m "add a"
git log
원격 저장소에 연결하기
git remote add orgin 복사한_주소_붙여넣기
git remote -v # 원격 저장소에 제대로 연결됐는지 확인
04-4. 원격 저장소에 올리기 및 내려받기
- Push: 지역 저장소의 소스를 원격 저장소로 올리는 것
- Pull: 원격 저장소에서 지역 저장소로 내려받는 것
원격 저장소에 파일 올리기
# 지역 저장소의 브랜치를 origin, 즉 원격 저장소의 master 브랜치로 푸시
# -u 옵션은 지역 저장소의 브랜치를 원격 저장소의 master 브랜치에 연결하기 위한 것. 처음 한번만 사용.
git push -u origin master
(한 번이라도 푸시 했다면) 간단하게 푸시 가능
git commit -am "add b"
git push
원격 저장소에서 파일 내려받기
git pull origin master
git log
04-5. 깃허브에 SSH 원격 접속하기
SSH 원격 접속이란
- SSH는 Secure Shell의 줄임말
- 보안이 강화된 안전한 방법으로 정보를 교환하는 방식
- SSH에서는 기본적으로 Private Key와 Public Key를 한 쌍으로 묶어서 컴퓨터를 인증
SSH 키 생성하기
ssh-keygen
# id_rsa: 프라이빗 키
# id_rsa.pub: 퍼블릭 키
cd ~/.ssh
ls -al
깃허브에 퍼블릭 키 전송하기
cd ~/.ssh
cat id_rsa.pub
# 내용 복사 후, 깃허브 홈페이지 우측 사용자 아이콘 - Settings - SSH and GPC keys - New SSH Key에 추가
SSH 주소로 원격 저장소 연결하기
git remote add origin 주소
git remote -v
마지막 3일차는 5장~6장 스터디로 돌아오겠습니다.
관련 Youtube
http://bit.ly/do-it/git3 / http://bit.ly/do-it-git4
반응형
'IT' 카테고리의 다른 글
스터디노트 - 점프 투 장고 (1) - 장고 개발 준비 (0) | 2021.01.31 |
---|---|
[리뷰] 똑똑하게 코딩하는 법 - 파이썬 코딩의 기술 (0) | 2021.01.10 |
[스터디노트 - 1일차] Do it! 지옥에서 온 관리자 깃&깃허브 입문 / 1장~2장 / 깃 기초 (0) | 2020.11.23 |
5월 13일 - 슬랙 장애 발생 (업데이트: 조치 완료) (0) | 2020.05.13 |
LG G4 누가 입히기 (0) | 2019.07.28 |
댓글