JSP_보강 GIT

wstudee·2020년 11월 25일
0

JSP

목록 보기
1/3

GIT을 이용한 형상관리

SVN 의 단점 : 중앙집중형

-> 단점 해소 : 분산형

  • svn 의 아키텍처 구조

  • 분산형 구조

중앙형은 버전의 히스토리가 중앙에만 있었는데
분산형은 각각의 단말기에 저장소가 있음
따라서, 리파지토리가 중앙과 로컬로 나뉨

GIT

  • svn 명령어
  1. 템플릿프로젝트 만들어서 share
  2. checkout : 나와 내 팀원간의 동기화
  3. commit : 새로운 산출물 서버에 올릴떄
  4. update : 최신 버전 가져옴
  • git 은 분산형으로 저장소 운영
    버전관리의 히스토리도 로칼리파지토리에 생겨

로컬리파지토리

add commit push = svn의 commit

  1. 워킹디렉토리
  • 작업을 하면 이부분에 만들어져 = 프로젝트라고 보면 됨
  • 변경사항이 발생하거나 새로운 리소스를 add 명령어로 staging area로 옮김 -> 모든 리소스가 인덱스를 부여받고 인덱스에 의해 버전관리 이루어짐
    ㅅ테이징 에어리어는 임시공간 - 여기 올린 리소스는 회수가능
    스테이징 -> 깃디렉토리 로 보내는 명령어 commit
    최종적으로 리파지토리에 반영할때 깃디렉토리

커밋이 두단곌 쪼개진거임

여기까지 로컬안에서 이루어진 작업
다른 팀원도 이 작업을 하고 있음

함께 사용하려면 리모트 리파지토리 필요해

push
여러 단계의 히스토리가 한꺼번에 푸쉬됨
히스토리 123, -> 리모트 서버
리모트 서버 히스토리 123

pull
리모트 서버에서 끌고 오는 명령어
히스토리 123 ㄱㅏ져옴
-> 리모트 컴1 컴2가 같은 상태 유지하자는 게 핵심..

깃설치

  • 비유틸에 설치

  • 기본에디터 설정 : 커밋메세지 기록하기 위함
    노트패드++

  • branch : 각각의 모듈을 개발하기 위해 쪼개지는 흐름
    svn에서 기본브랜치는 마스터였음

  • 윈도우의 커맨드를 사용해서 깃 사용할건지 물음

  • 현재 커밋하려는 팀원이 정상적인지 체킹

  • 커밋할떄 마지막 문장 어떻게 끝낼건지 물어봄

  • 윈도우의 기본 cmd 통해 깃작업가능

  • 기본으로 ....

  • 심볼릭링크는 리눅스에서 사용하는 개념

  • 노체킹

  • 체크빼버리고 닫깅

  • cmd 열어서 확인

  • 깃을 이용한 형상관리 ~
    내 컴에 로컬리파지토리 필요

    이 파일은 아직 리파지토리가 아님
    init 명령 사용


.git 이 있어야 로컬리파지토리

  • 설정파일
    잘못건드리면 형상관리 안됨

  • file1.txt 생성
    지금 현재 워킹디렉토리에 있는 상태
    -> 깃은 아직 모르는 거임

  • git add *
    전부 스테이징 에어리어로

rm - 스테이징에어리어엥 있는걸 다시 워킹으로 간단거 (회수)

  • 리소스에 대한 원주인

    글로벌 옵션은 현재 피씨 전체에 대한 계저 ㅇ
    여러개의 ㄱ{정을 써야될수도 잇으니까 글로벌 옵션 뺴야됨 -> 현제 리파지토리에서만 사용하게 됨
  • 깃허브

    gitignore = .class 팡리 빼는거

콘솔 하나 더 열기
학교 - 집(home)
로컬리파지토리를 만들떄 리모트를 복사해서 만드는 방법으로 해보자

  • 이것이 로컬리파지토리

  • 뭐할지 모르겠을때는 git status
  • 히스토리 확인은 git log


이 로그는 리모트에서 만든거

커밋 + 커밋메세지

다시 히스토리 확인

깃은 히스토리 자체를 동기화 -> 그동안의 히스토리 다 있는데 그 중 헤드가 어디에 있는지 확인
언제나 헤드는 가장 최신으로 유지할수 잇도록 해야됨

  • git push -> 로그인

토탈 3개를 올렸다 . 이 위치에다가


개발원으로 끌어오기
깃허브 코드 카피 해서 클론
git clone https://github.com/wstudee/musical-memory.git

  • git log 해보면 히스토리가 동기화 되어있음

집ㅈ

  • git status 는 로컬밖에...

  • git fetch

  • git pull


이클립스로 ~
우상단 퍼스펙티브 -> git
이클립스로도 형상관리 가능해

이클립스에서 사용할 로컬리파지토리 필요!


체킹하고 애드

템플릿만들고 처음으로 올리는거 해보자


? 가 떠있다는 건 아직 스테이징 가지 않았다 = 새로 만들어진 자원이다


워크스페이스에서 더미가 사라짐


홈으로 이동했음
여기서 형상관리함
notepad로 새로운 파일 만든거랑 똑같

  • add

  • yes

  • build/classes 동기화 설정 필요 없어 -> ignore 설정 필요해

  • 홈에 있는 .gitignore 열어보면

  • 맨밑에 /build/ 추가

setting build 아래 잇는건 동기화하면ㅇ ㅏㄴ돼

스테이징 영역으로 갔어


학교에서 git pull 로 dummy01 가져오고 수정


집가서 pull


수업에 쓸 깃

처음 한번은 설정파일까지 전부 올려줄건뎅
중간에 .class 인건 빼주기
커밋앤푸시

과제 2~~~
집에서 깃을 사용할수 있는 환경 셋팅해서 복습

git repository 비우기

로컬 리파지토리 내용 지우고

git bash에서 실행
git status 하면
deleted :

git add .
git commit -m "commit message"

git push original master

끝!

0개의 댓글