★ Git과 GitHub

개발자들이 프로젝트를 수행할 때 편리하게 협업할 수 있게 해주는 Git과 GitHub.

서버에서 가져와 개발한 후 다시 서버에 저장하는 형태로 작업한다.

 

○ 버전 관리 시스템

CSV → SVN → Git & GitHub(마이크로소프트사)

개인은 무료!!

 

○ Git이 자바라면 GitHub는 자바를 이용하기 위한 서버

Git Server(레퍼지토리) 중 하나가 GitHub이다.

→ GitHub를 사용하는 클라이언트들은 Git 명령어를 사용한다.

→ Git은 클라이언트 GitHub는 서버의 역할을 한다고 생각

 

● IDE(통합 개발 환경) → eclipse, InteliJ, VScode

통합 개발 환경에서 GUI를 제공하여 작업을 할 수 있게 도와준다.

→ Git 명령어를 잘 몰라도 사용 가능하다.

 

★ GitHub를 사용하는 법을 잘 알아야 한다.

README 파일 → 해당 레퍼지토리의 설명 파일

.gitignore → GitHub에 일부 저장하고 싶지 않은 파일을 설정할 수 있다.

license → 배포할 때 추가적으로 사용

Collaborators ... 등 알아갈게 많다.

각 레퍼지토리의 설정 기능도 잘 이용해보자.

 

★ IDE에서 Git 사용하기

로컬 저장소는 우리의 pc이고, 원격 저장소는 GitHub이다.

 

● GitHub 회원가입을 하고 레퍼지토리를 만들어 준비

 

● eclipse에서 프로젝트를 만든다. (Springframework 프로젝트 생성)


※ Springframework 프로젝트 생성 복습

1. 새로운 프로젝트 생성

→ eGoveFrame Web Project

Dynamic Web Module version (서블릿)

Artifact Id 설정 → http://localhost:8080/Artifact Id 여기에 오게될 것
finish

 

2. web.xml 파일 생성 (중요)

java EE →  Generate Dployment Descriptor stub을 누르게 되면 파일이 생성

 

3. pom.xml 파일 삭제

지우기 전에 Maven -> disable Maven Nature을 누른다음 삭제해주어야한다.

다음으로 프로젝트 configuer → Convert to Maven Project

Group Id : com.mycompany

※ pom.xml 파일이란?https://coding-hyeok.tistory.com/47 참고

 

4. pox.xml 파일 수정

라이브러리들을 추가한다. 20일차에 했던 것들.

그리고 Maven → update project

 

5. src/main/resources

하위에 spring 폴더 생성, log4j2.xml 파일 생성

spring 폴더 → dispatcher, root 폴더 생성

dispatcher 폴더 → ch01_component_scan.xml, ch01_static_resource.xml, ch01_view_resolver.xml

root 폴더 → ch01_component_scan.xml

(미리 만들어놨던 파일 끌어와도 됨)

 

6. web.xml 수정

리스너, 서블릿, 필터 코드 추가

 

7. views 폴더

기본적인 프로젝트 생성 완료


▶ 생성한 프로젝트와 Git & GitHub 사용

먼저 Git을 설치한다.

(https://git-scm.com/download/win)

 

● GitHub에 프로젝트 연결하기

프로젝트 우클릭

team → share project → git → Use or create repository in parent folder of project

: 현재 Workplace에 git 레퍼지토리를 만드는 것.→ Package Explorer 해당 프로젝트에 원통 모양의 그림이 생기고, 폴더에 물음표(?)가 생긴다.만약 폴더 아래에 파일이 없을 경우, GitHub에 push할 수 없다

따라서 비어있는 src/test/java폴더에 패키지(com.mycompany.프로젝트 아티팩트 아이디)를 생성하고 그 아래에 jUnit Test Case 파일 생성한다. 그리고 src/test/resources폴더에 log4j2.xml파일을 생성한다.

 

● 버전 관리에서 제외할 파일 또는 폴더 지정

lib폴더는 공유하지 않아도 된다.

target 폴더 : 우리의 프로젝트를 빌드해서 저장되고 실행하는 곳

"?"가 붙은 곳은 앞으로 이 곳을 공유(버전관리)하겠다는 의미이다. target은 개발자마다 다른 환경으로 구동된다. 따라서 버전 관리에서 제외시켜주어야 한다.

target 폴더 → Team → Ignore

ignore 해주면 우리의 프로젝트 폴더 내에 .gitignore파일이 생성되고 .gitignore파일을 열어보면 제외할 폴더명이 적혀있다.

 

● 로컬 저장소에 저장(commit)하기

프로젝트 우클릭

→ Team → Commit...

다음 화면이 나온다.

Git 레퍼지토리에 로컬저장소가 생긴다.

 

● Author와 Committer 설정

Window → Preferences Version Control (Team) Git Configuration [Add Entry…]

 

로컬 저장소와 원격 저장소 연결

Git Perspective 열기프로젝트 우클릭 → window → perspective → Git 레퍼지토리 열기(Git 레퍼지토리에서) 프로젝트 하위의 Remotes 우클릭 → create Rmote

origin → 원격 저장소 이름

GitHub 레퍼지토리 URL 넣어주기.

GitHub아이디(email형식)입력과 token입력.

Store in Secure Store → 앞으로도 이 아이디를 사용하겠다는 옵션 체크

advanced → save and push 설정

 

 

● Remote 설정

○ PULL (원격 저장소 → 지역 저장소)

Git Perspective → 프로젝트 이름 → Remotes → origin 우클릭  → Fatch → Configure Fetch… → 깃허브 URL 입력  → [Advanced] → [All Branches]

 

 

● Eclipse 프로젝트 복제

 

 

● Commit / Push

 

push → 로컬 저장소에서 원격 저장소로 파일을 올리는 것 ( 화살표 ↑ )

pull → 원격 저장소에서 로컬 저장소로 파일을 내려 받는 것 ( 화살표 )

patch → 일부 내용만 내려 받는 것

 

 

● 이전 버전 내용 보기

이전에 commit했던 내용을 보겠다는 것

해당 프로젝트에서 우클릭 → Team → Show in History → 기록에서 해당 시점에 Check Out (Head 이동)

이 때는 읽기 전용 상태이다.

변경하고 commit을 하려면 새로은 branch를 해당 Id에서 생성해야 한다.

 

○ master HEAD로 되돌아오기

해당 프로젝트에서 우클릭 → Team → Switch To  master (Check Out)

 

 

● 프로젝트를 이전 버전으로 초기화하는 방법

 

 

※ 이번 프로젝트에서 branch 사용 금지

우선 1차 미니 프로젝트에서 여기까지만 한다.

(branch 내용을 학습하고 프로젝트시 실수 방지)

 

 

● 파일 또는 코드 충돌

 

충돌을 해결하려면?

 

 

● 독립적인 프로젝트로 변경하고자 할 때

'JAVA' 카테고리의 다른 글

31일차 2024 - 4 - 9  (0) 2024.04.09
30일차 2024 - 4 - 8  (0) 2024.04.08
28일차 2024 - 4 - 4  (0) 2024.04.04
27일차 2024 - 4 - 3  (0) 2024.04.03
26일차 2024 - 4 - 2  (0) 2024.04.02

+ Recent posts