본문 바로가기

자바 웹을 다루는 기술

git[이클립스에 git연동하고 GUI로 이용하기]

https://opentutorials.org/module/3762

 

GIT2 - CLI - 버전관리

수업소개 소위 git이라고 하면 command line에서 사용되는 프로그램을 말합니다. 이 수업에서는 바로 이 프로그램의 사용법을 살펴봅니다.    수업대상 이 수업은 아래와 같은 상황에 있는 분들을

opentutorials.org

https://opentutorials.org/module/3733

 

GIT1

수업소개 이 수업은 버전관리 시스템 git을 소개하는 수업입니다.  수업대상 이 수업은 아래와 같은 상황에 있는 분들을 위한 수업입니다. 아래에서 문서란 일반적인 텍스트 문서에서부터 이미

opentutorials.org

https://youtube.com/playlist?list=PLuHgQVnccGMCNJESahrVV-uYGMNYK_vMf 

 

Git1

https://opentutorials.org/module/3733

www.youtube.com

https://git-scm.com/downloads

 

Git - Downloads

Downloads macOS Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific exp

git-scm.com

걍 next해서 설치만 하면 되네

로컬 VCS

그냥 로컬에서만 사용하는애

 

중앙집중식 VCS

서버에만 최종본 존재 원하는 파일만 로컬에 받아서 수정후 올린다.

중앙서버 날아가면 다 날아감..복구 불가

 

분산 VCS

여러사람들과 같이 사용할 수있도록 복제한다. 수정본을 각자 갖고 있다. 전체파일을 과거의 이력이 모두에게 전달

서버에 올리면서 merge만 하면되다 --> git merge 안하면 로컬임

 

 

git의 장점

Git에서는 소스 코드가 변경된 이력을 쉽게 확인할 수 있고, 특정 시점에 저장된 버전과 비교하거나 특정 시점으로 되돌아갈 수도 있습니다.

 

 

저장소

Git 저장소가 제공하는 좋은 점 중 하나는 파일이 변경 이력 별로 구분되어 저장된다는 점입니다. 

비슷한 파일이라도 실제 내용 일부 문구가 서로 다르면 다른 파일로 인식하기 때문에 파일을 변경 사항 별로 구분해 저장할 수 있습니다.

원격저장소 : 다른사람과 공유하기 위함

로컬저장소 : 내꺼에 저장

 

같은 부분을 수정하고 올릴때 살짝 확인 필요하겠구먼

 

처음에 설정

clone 

기존에 저장소에 있는거를 그대로 복제할때

init 

저장소 만들기

 

삭제 변경

add

 

이력관리

 

저장소설정 

branch 저장소

commit 저장

merge 합치기

reset 현재 작업되는 위치변경(연결리스트)

switch 저장소변경

 

fetch 서버의 변경목록을 가져옴 ->기록 no, 읽기만

pull  실제 서버에 데이터를 가져옴 

push 원격서버에 저장 ->save라고 보면된다.

 

깃 공식문서

https://git-scm.com/book/ko/v2

 

Git - Book

 

git-scm.com

 

원하는 폴더로 가서

git init

 

 

git 파일정보 들어가있나 확인

 

저장소에 관한 중요한 정보들 없어지면 git이 의미가 없다

 

 

리포지토리 확인

 

3가지 저장공간 - > 한군데이지만 나눠놓은거

working diretory 내가 작업하고 있는 프로젝트의 디렉토리 

staging area: git add한 파일들이 모여 있는 곳 -> 최종적으로 준비된 상태

repository: 커밋들이 모여있는 저장소 -> 최종 저장소

 

 

자바 프로젝트에서 .classpath와 src폴더 .project 가 중요하다

 

 

src

bin                 staging             저장소

         add                        commit - >기록, 설명 작성 가능

.git이 있는 폴더의 모든 파일들을 검토 대상으로 본다 - > 변화 확인(모니터링) 이미저장된것과의 차이

용량 시간으로 판단

 

git에서 무시할 것에 관한 내용을 적ㄴㄴ다

.gitignore파일을 폴더에 생성

 

깃 상태 확인 - >staging 영역에 넘어간게 없음

폴더안에 폴더리스트 나온 빨간색갈에 bin폴더 없넹

파일만

폴더 통째로 staging 영역에

git에 저장가능

 

 

 

로그인해야함

저장되어 있는곳 

head가 master를 가리키고 잇고

작성자 시간이 나온다.

 

파일 변경한거 저장소에 잇는걸로 되돌리기

 

이클립스

깃 리포지토리 

window > show view > others

 

 

아직 원격 연결은 안함

 

stating도 볼수있다

올라간부분과 안올라간 부분 

 

show in history

깃의 로그

변경이력 구체적으로 확인 가능!

 

diff 뭐가 변경되었느지 확인

 

이거 드래그하면 됌ㅋㅋgit add src

 

메세지 써주고 commit 버튼 클릭하면 history 에 올라간다

 

commit되었을때 생성되는 id

ui로 하기 create repository 누르고 finish

 

ui로 ignore함

history에서 두개 를 비교해서 볼수 있다

새로운 branch 생성

//각자에게 따로따로 전달 하는 소스코드가 있다 ->이전에는 프로젝트를 따로 따로 만들어서 해야한다

//좋은 소스코드를 발견하게 되면 각 프로젝트에 소스코드를 추가해야한다.

//SOLID

//S : 단일 책임의 원칙

//branch를 만들어서 새로운 버전관리 다른 프로젝트에도 변경사항이 반영되도록한다.

 

 

 

이러면 지금현재 동일한 프로젝트가 두개 생기는데 생성되면서부터 master와 삼전 둘다 각각수정가능하ㅏㄷ

 

 

branch 변경

 

merge

master에 정수를 merge

다른 위치의 기능을 추가할때는 문제가 없어 근데 같은 위치의 것을 합칠때는 충돌나

 

메세지가 나옴

개발자가 알아서 선택하고 저런 주석은 지워준다.

 

 

 

 

 

 

 

-----

?와 >는 staged전이란 표시

 

 

git graph라는 걸 설치하면 git관련된걸 그래픽으로 보여줌

settings를 들어가서 토큰을 발급받는다

 

 

만료일

 

리포지토리 영역 관리

 

인증키는 기억해놔야함ㅋㅋㅋ 잊으면 지우고 다시...

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

원격 리포지토리 만들기

 

 

 

디폴트 port가 443 이라 생략

 

 

password는 토큰을 붙여넣기한다.

 

서버의 저장소를 로컬에도 복제해야한다

 

 

로컬에 저장할 git 저장소를 입력하는 부분

 

프로젝트의 jigt안에 폴더를 선택해준다.

 

서버에 같이 올리기 commit and push

 

 

 

로컬에 main , 서버에 main

 

commit만 햇으면 서버에 올리리라면 push to origin

 

clone

 

 

 

 

 

 

 

 

지워주고 추가해서 src 선택해서 추가

 

 

git 다른 사람과 연동

settings에 들어가서 설정

협업설정

 

초대할사람의 이메일 address

 

 

 

허가할 사람 이메일을 추가하면 이메일로 초대 메일이 가게 되고 메일을 통해 접속하면 된다.