멀티캠퍼스 백엔드 과정 6~7일차[6월 8일~6월 9일] 깃& 깃허브 특강

GoldenDusk·2023년 6월 12일
0

깃[파일을 코드로 인식]

깃 버전 관리

  • 작업 디렉토리 - 소스 파일들(여기에 코딩 하면 됨)
    • 변경 사항 생성
  • 스테이지 - 임시 무대(깃이 관리)
    • 확인차원 + 묶음
    • add : 작업 디렉토리의 내용을 스테이지에 올리는 것
  • 저장소(깃이 관리) : 버전이 만들어지고 관리되는 공간
    • commit : 스테이지의 내용을 저장소로 커밋

https://github.com/abhisheknaiidu/awesome-github-profile-readme

코드트리

  • ctrl를 누르고 커밋과 커밋을 선택하면 변경사항을 알 수 있음

  • 그전의 파일로 돌아가려면 위의 상태에서 파일 누른후 오른쪽 마우스 선택한 버전 열기 하면 됨

버전 되돌리기

revert

  • 버전을 되돌린 새로운 버전 만들기
  • 모든 버전이 유지 된 채, 새로운 버전을 만든다..
    • 지금까지 만든 버전은 손대지 않고, 되돌리고 싶다
  • ex. 1000번 ⇒ 999번으로 되돌리기 ⇒ 1001번으로 만들어짐

reset

  • 버전 완전히 되돌리기

  • 3가지 종류

  • soft : 저장소로 커밋하기만 제거, 커밋 사실만 지우기
  • mixed : 스테이지로 추가하기를 제거
    • 코드는 남아 있음
    • 그렇기 때문에 add후 다시 커밋하면 됨
  • hard : 코드까지 다 지움

지금까지 작업 임시 보관하기

스태시(Stash)

  • 지금 코딩 작업중인 것을 날리기
  • 작업의 임시보관
  • 충돌 할 수 있기에 보관하고 나서 다시 복구시 그냥 삭제할 것

브랜치

브랜치의 기본

  • 서로의 작업과 전혀 관련 없는 부분, 같은 코드를 다르게 수정한 부분 혼재의 문제 해결
  • 버전의 분기

브랜치를 나눈다

  • 최초의 브랜치는 master 브랜치로 이름이 정해짐
  • 브랜치 이름 규정은없으나, 목적에 맞게 부여하는 것이 좋음
  • 각자의 브랜치에서 작업한다.
    • Head는 현재 작업 중인 커밋
    • 체크아웃은 Head를 변경하는 작업
    • head를 바꾸는 방법은 브랜치에서 더블클릭하면 작업 환경이 달라짐
    • master에 두면

  • foo에 두면 foo에 만든 foo txt 파일 보임

나눈 브랜치를 합친다(Marge)

  1. 빠른 브랜치 합치기
    1. foo 합치기
    1. 현재 브랜치 위치 확인 할것
    2. 이후 foo는 필요없으니 브랜치에서 삭제

  1. 일반 프랜치 합치기 ⇒ 충돌나지 않기에 개별 파일로 작업하는 것이 좋음 EX. A따로 B 파일 따로 만들어서 작업
    • 마스터에서 작업을 하고, foo에서도 작업을 하면 이런 결과가 나옴

  • 합치기, 선이 달라

충돌

  • 마스터에서도 작업을 하고 FOO도 같은 것을 작업 ⇒ 충돌
    - 커밋하지 않은 변경사항이 생김

  • 둘 중 하나를 선택 해야 하는데 내 것은 현재 브랜치

  • 결과 ⇒ 파일상태에서 충돌에 대한 설명 커밋…

  • 충돌 방지를 위해서는 a 파일이 있다는 전제하에 a파일을 둘 다 쓰는 것이 아닌 b 파일을 만들어서 할 것

브랜치의 재배치

  • 재배치 : foo 브랜치의 base를 변경

깃허브

깃 허브와 소스 트리의 연동

  • clone

  • origin : 깃허브의 메인

  • clone 후 pc에서 커밋 후 pull 하면 깃허브에도 똑같이 수정해서 올라감

깃허브로 협업하기

원격 저장소와 협업하기

  • clone : 원격 저장소 복제
    • 코드 HTTPS clone

- 소스트리에 복제

  • push은 오류남..(업로드 불가 허가 받은 사람이 아니기에 코드만 볼 수 있다)
  • push : 업로드
  • fech : 다운로드
  • pull : 다운로드 후 합치기

중요 요약 : 새로운 프로젝트 시작(HTML_Project) ~~ (깃, 깃허브도 세팅해 놓기) ⇒ 새 pc 배포

  • pc 배정 후 1회
    • 개발 환경 설정 : Visual Studio Code, Eclispse, Java … <자신의 개발환경>
    • 깃 설치 + 소스트리 설치
    • 깃허브 가입
    • 깃허브와 소스트리의 연동(계정 추가)
  • 프로젝트 마다 설정(HTML_Project)
    • 깃 허브에 저장소 생성 + 빈 파일 생성(확인용)
    • 소스트리에서 클론 + 확인
  • 매일 작업
    • 코딩하기(작업 디렉토리 변경)
    • (퇴근전) Add + Commit ⇒ 버전 생성
    • Push…

중요 요약 2 : pc의 기존 깃 프로젝트(Project1)가 진행중에 있다. 이제부터는 깃허브에도 백업하자

  • 1회만 할 것
    • 깃 허브 가입
    • 깃허브와 소스트리의 연동(계정 추가)
  • 프로젝트마다 각각 (Project1)
    • 깃허브에 저장소 생성(완전 빈 저장소)
    • 소스트리에서 원격지(origin) 주소를 추가

추가 : 원격이름 디폴트, URL HTTPS 주소 복사해서 넣음

  • 클론 절대 X, Push O
  • 깃허브에서 확인

  • 매일 작업
    • 코딩하기(작업 디렉토리 변경)
    • (퇴근전) Add + Commit ⇒ 버전 생성
    • Push…

내 깃허브

내 깃허브 주소

화면(미완성)

회고

이틀동안 깃, 깃허브 기본만 특강으로 들었다. 처음 인강듣고 혼자할 때는 많은 걸 소화하려 해서 더 금방 지쳐버렸다.. 근데 이거는 그래도 기본은 알려주면서 좀 재미있게 알려줘서 좋았다. 미니특강으로 취업 관련된 걸 들었는데 내가 잘 생각하고 있구나를 다시 알게 된 계기었다. 깃 허브 만지는 것은 좀 더 심화는 배워야 할 것 같다. 연결부분도 그렇고 명령어도 너무 적어...
그리고 깃허브의 스택도 하나씩 늘려가서 마스터 하고 싶다. 깃허브에도 공부한 거 올리고 싶은데 너무 욕심부리면 지치니 천천히..

profile
내 지식을 기록하여, 다른 사람들과 공유하여 함께 발전하는 사람이 되고 싶다. gitbook에도 정리중 ~

0개의 댓글