프로젝트를 github 같은 곳에 올리다 보면, 환경 셋팅 파일들이 추가되어 pull 받고 에러가 발생하는

경우를 볼 수 있습니다. (.class .settings 같은 파일이 추가 되었을 때)

이런 파일들을 커밋 할때마다 분류해서 push 하기 귀찮으니, 아예 .gitignore 파일에 분류 대상을 정해 줄 수 있습니다.

 

저는 .gitignore 파일만 설정 하는게 아닌, 깃 저장소 생성과 프로젝트 생성도 같이 진행 하겠습니다.

 

 

 

1. https://github.com/ 깃 허브 가입 및 저장소 생성

   아래 빨간 박스의 Add .gitignore 파일을 'Java' 선택 해서, Create repository 를 진행

 

 

 

2. 생성된 .gitignore 파일 클릭 및 수정 버튼 클릭

 

 

 

3. https://www.gitignore.io/ 에 접속 후 'Eclipse' 검색. 출력되는 모든 내용을 복사 후 .gitignore 파일에 전체 붙여넣기

  https://www.gitignore.io/api/eclipse  <- (모든 내용 복사)

 

 

 

 4. 이클립스 ->Window -> Show View -> other -> Git Repositories -> Clone Git Repository.

    생성된 깃 저장소에서 'Clone or download' 클릭 후 url 복사. 자동 완성 후 Finish

 

 

 

 

 

5. 생성된 깃 저장소 확인

 

 

 

6. File -> New -> Dynamic Web Project -> Next -> Next -> Generate web.xml deployment descriptor 체크 

 

 

 

 

 

 

7. 생성된 프로젝트 확인

 

 

 

8. Window -> Show View -> Other -> Git Staging -> 빨간 박스 버튼 클릭

 

 

 

9. Commit 메세지 작성 후 Commit&Push 버튼 클릭

 

 

 

10. commit된 파일 확인 후 종료

\

 

 

 

매번 실무에서는 만들어져 있던 프로젝트를 import/pull 해서 사용 하다보니,

초기 프로젝트 세팅(프로젝트 생성 및 깃 저장소 연결) 을 직접 해본적이 없었습니다.

스터디를 위해 프로젝트를 만들다가 삽질을 하도 많이해서 시간낭비를 또 하지 않기 위해 블로그에 정리 합니다.

상세한 설명보다는 절차적으로 이미지로 표현 하였습니다.

 

 

 

1.  https://github.com 접속 및 회원 가입.

 

2. 'Start a Porject' 버튼 클릭 후 그림(2-1) 처럼 작성

그림(2-1)

 

 

 

3. 생성된 깃 저장소 링크 확인. (5번 항목에서 사용 됨)

 

 

 

 

4-1. STS 및 이클립스 실행 -> Window -> Show View -> Other... 선택 (그림 4-1)

4-2. Git Repositories 선택 (그림 4-2)

그림(4-1)
그림(4-2)

 

 

 

5-1. Git Repositories 항목 -> Clone a git repository 선택 (그림 5-1)

 - 항목이 없으면 Window -> Show View -> Other... 에서 검색

5-2 Location.Url 항목에 3번에서 생성된 Git Url 복사 및 붙여넣기 (그림 5-2)

5-3 next (그림 5-3)

5-4 Git 저장소를 선택 후 Finish (그림 5-4)

 

그림(5-1)
그림(5-2)
그림(5-3)
그림(5-4)

 

 

 

6. Git Repositories 항목에서 추가된 저장소를 확인 (그림 6-1)

그림(6-1)

 

 

 

 

7-1. 스프링 프로젝트 생성 (그림 7-1)

   New -> Spring Boot -> Spring Starter Project

7-2 설정 하고 싶은 정보 입력 (그림 7-2)

7-3 기본 설정을 위한 Spring Web 선택 (그림 7-3)

7-4 Finish (그림 7-4)

그림(7-1)
그림(7-2)

 

그림(7-3)

 

그림(7-4)

 

 

 

8. 생성된 프로젝트 확인

 - unknown 에러 발생시 해당 링크 참조 https://gabrielyj.tistory.com/178

그림(8-1)

 

 

 

9-1. 프로젝트 우클릭 -> Team -> Share Project (그림 9-1)

9-2. 부모 디렉토르 확인 후 Finish 

 

그림(9-1)
그림(9-2)

 

 

 

 

10. Git 저장소와 연동된 프로젝트를 확인. '프로젝트 이름[깃 저장소 이름]'

 

 

11-1. 프로젝트 파일 깃 저장소로 Commit 하기 위해서 , Unstaged Changes 파일들을 Staged Changes 로 보내기

        파일 선택 -> 우클릭 -> Add  to index (그림 11-1)

11-2 Staged Changed 된 파일 확인 (그림 11-2)

11-3 Commit message 작성 (그림 11-3)

11-4 커밋 작업 후 깃 저장소로 Push (그림 11-4)

11-5 마스터 브랜치 확인 후 머지 및 Finish 확인

11-6 최종 메세지 확인 후 종료

그림(11-1)
그림(11-2)
그림(11-3)
그림(11-4)
그림(11-5)
그림(11-6)

 

 

 

12. Github 홈페이지에서 커밋 내용 확인 (그림 12-1)과 (그림 12-2) 처럼 최근 커밋 내용이 출력

그림(12-1)
그림(12-2)

이클립스 환경에서 Git 저장소를 Clone 하려고 하는데, 'cannot open git-upload-pack'에러가 발생 했습니다.

해당 에러는 SSL 보안 증명 방식을 false 해줌으로써 쉽게 해결 할 수 있습니다.

 

1. Window -> Preferences -> Team -> Git -> Configuration (그림1)

2. Key : http.sslVerify / Value : false (그림2)

3. 등록 확인 후 Apply / Ok 클릭 하시면 됩니다.

 

(그림1)
(그림2)
(그림3)

 

 

 

 

 

이번에 스프링을 훨씬 더 깊게 공부하기 위해, 제 마음속 스프링의 신 백기선님의 강의를 듣기 시작 했습니다.

백기선님은 강의 진행에 IntelliJ 를 사용하시는데, 저는 굳이(?) 이클립스를 이용해서 진행 하고 싶었습니다.

분명...인텔리제이가 어려워 이클립스를 사용하실 분이 계시다는 생각으로... 도움이 되고자 포스팅 합니다.

 

 

 

1. 우선 이클립스 상단 메뉴의 File->New->Others에서 SCM을 검색 하신다음, 아래 항목을 선택 해주세요.

 

 

 

 

2. SCM URL 항목에서 git을 선택 하신다음, git repository URI를 입력 하고 Finish 눌러주세요.

 

 

 

 

3. 위에 과정을 거치면 빌드를 위해 Maven이 열심히 파일들을 다운로드 받습니다.

 처음 이 과정을 거치시는 분은 상당히 많은 시간이 소요될 수 있습니다.

 

 

 

4. 빌드가 완료되서 프로젝트가 완성 되면 좋겠지만... 제가 직장 동료의 피씨와 제 노트북으로도 테스트 해본 결과

   공통된 에러가 발생 했습니다.

Multiple annotations found at this line:  - Execution default-testResources of goal    org.apache.maven.plugins:maven-resources-plugin:   3.1.0:testResources failed: Plugin    org.apache.maven.plugins:maven-resources-plugin:3.1.0 or one    of its dependencies could not be resolved: Failure to transfer    com.google.code.findbugs:jsr305:jar:2.0.1 from https://   repo.maven.apache.org/maven2 was cached in the local    repository, resolution will not be reattempted until the update    interval of central has elapsed or updates are forced. Original    error: Could not transfer artifact    com.google.code.findbugs:jsr305:jar:2.0.1 from/to central    (https://repo.maven.apache.org/maven2): The operation was    cancelled. (org.apache.maven.plugins:maven-resources-plugin:   3.1.0:testResources:default-testResources:process-test-resources)

해당 에러는 maven-resources-plugin 이 없어 빌드가 진행되지 않아서 발생 합니다. 해당 플러그인의 dependency를

pom.xml 에 등록하면 에러 사라집니다. 아래 URI에서 원하시는 버전을 선택 하시고,

아래 소스 코드를 pom.xml dependencies에 등록 해주시면 됩니다.

https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-resources-plugin

		

    org.apache.maven.plugins
    maven-resources-plugin
    3.1.0

 

 

 

5. pom.xml 저장 후 프로젝트 우클릭->Run As->Maven Install 을 실행 해주세요. 

  그러면 프로그램이 열심히 돌기 시작합니다.

 

 

 

 

 

6. 빌드가 종료되면, 프로젝트 우클릭 -> Run As -> Spinrg Boot App 을 실행 해주세요.

   그림(2)와 같이 서버가 실행 됩니다.

  

그림(1)

 

그림(2)

 

 

 

7. 웹 브라우저에 localhost:포트번호(8080) 을 입력 하시면 시작된 고대하던 petclinic 페이지가 접속 됩니다.

 

 

처음 공부를 할 때에는 svn의 사용 이유에 대해 이해 하지 못 했습니다. 커밋/푸쉬/풀 등 기능이 너무 어려웠습니다.

그래서 실무 시작 전 스터디 할 때에는 1차원적으로 프로젝트를 압축파일로 저장하면서 백업을 했습니다.

지금 생각하면 너무 비효율적이였죠...ㅎㅎ

현재 근무중인 회사에서는 mercurial로 버전 관리를 하고 있습니다. 하지만 github에서 포트폴리오 형식으로

소스 관리를 할 수 있기 때문에 개인 프로젝트는 git/github로 진행 하려고 합니다.

 

우선 버전 관리를 하고 싶은 프로젝트가 있어야 하고, github 계정 및 repository 생성이 완료 되어 있어야 합니다.

프로젝트(스프링) 생성 -> https://gabrielyj.tistory.com/170

 

github에 로그인 하신 다음 repository create 항목을 누르신 다음, 아래 처럼 항목을 입력 해주세요. 

3인 이상의 프로젝트의 private은 유료이며 그 이하 인원은 무료로 가능 하실 수 있습니다.

저는 우선 프로젝트가 완료 되기 전까지 private으로 진행 하려고 합니다.

 

 

 

 

 

 

 

 

1. 생성된 프로젝트 우클릭-> Team -> Share Project를 클립 합니다.

 

 

 

 

 

2. 'Use or create repository in parent folder of project' 를 누르면 그림(2-2) 처럼 프로젝트 경로 밑에

    Git Repository 를 생성 할 수 있게 됩니다. 'Create'를 눌러주세요.

그림(2-1)
그림(2-2)

 

 

 

 

3. 'Git Repository' 에서 해당 프로젝트의 git 항목 중 'Remote' -> 'Create Remote' 를 눌러주세요.

 

 

 

 

 

 

4. Remote name은 'origin'으로 진행 하신 다음, 위에서 생성하신 Github 레포지토리의 URL을

저장 해주세요. 그 다음 Change를 누르면 자동으로 클립보드에 저장된 URl을 참조하여 그림(4-3)처럼

사용자가 직접 입력하지 않아도 URL/Host/Repository Path가 자동으로 입력 됩니다.

물론 그 아래 로그인 정보인 User와 Password는 보안을 위해 사용자가 직접 입력을 해야 합니다.

 

그림(4-1)
그림(4-2)
그림(4-3)

 

 

 

 

 

5. 프로젝트와 Git Repository가 서로 연동 되면, 다른 git기능들을 사용 할 수 있게 됩니다.

   그리고 프로젝트 우클릭 -> Team -> Commit을 하면 'Git Storaging' 메뉴가 표시되는데, 이부분에서 

   커밋 및 푸쉬를 할 수 있습니다. 그럼 프로젝트 생성 이후로 처음 커밋을 하는것이기 때문에 여러 소스 코드가

   'Unstoraged Changes'에 표시됩니다. 해당 항목에 있는 모든 파일들을 선택 하신 다음 드래그해서 아래로 내리거나,

   전체 선택한 상태에서 우클릭->'Add to Index'를 하면 'Staged Changes' 항목으로 이동 시킬 수 있습니다.

     *혹시 commit 사용자 정보를 변경 하고 싶으시면 포스트 맨 아래를 확인 해주세요 

 

 

 

 

 

 

6. commit 메세지를 작성 하신다음 'Commit'을 누르면 Commit만 되고 Push는 되지 않습니다.

   'Commit Push'는 커밋 이후 바로 푸쉬가 되는데 해당 버튼을 누르면 아래 사진처럼 절차를 진행 하시면 됩니다.

 

그림(6-1)
그림(6-2)

 

 

 

 

 

7. 커밋이 완료된 후 상단 메뉴의 'Window' -> 'Show View' -> 'Team' -> 'History' 메뉴를 보시면

   아래처럼 커밋 및 푸쉬가 된 내역을 확인 하실 수 있습니다. 

 

 

 

 

 

8. 마지막으로 github repository 에서 확인 하시면 커밋&푸쉬가 잘 됬는지 확인 하실 수 있습니다.

   아래 그림(8-1)을 보시면 프로젝트 밑에 최근 업데이트 된 시간이 표시 되어 있습니다. 제가 커밋&푸쉬 한 시간이며,

   그림(8-2)를 보시면 추가된 폴더 및 파일들에 최근 업데이트 시간이 표시되어 있는것을 확인 하실 수 있습니다.

그림(8-1)

 

그림(8-2)

 

 

 

 

커밋 사용자 정보 수정입니다.

Window -> Preference -> Git -> Configuration -> 'Add Entry' 에서 

user.name은 사용자명, user.email은 사용자 이메일을 설정 할 수 있습니다.

+ Recent posts