본문 바로가기
뒷북 정리 (국비 교육)/git, github

eclipse에서의 Git

by 규글 2022. 4. 5.

eclipse에서의 Git

 원하는 project에 우클릭을 해서 Team > Share Project 를 선택한다.

 

 그리고 Create 버튼을 통해 어느 곳을 Git repository로 만들 것인가에 대한 repository의 위치를 정하고 Finish를 누르면 해당 project에 대한 folder가 원래의 위치에서 Git으로 관리되는 repository로 옮겨가게 된다. 창에 보이는 체크박스를 클릭해도 지금은 상관 없지만, 나중에 문제가 발생한다고 하면서 잘 사용하는 것이 아니라고 했다. 더 이상의 말은 따로 하지 않았다. 

 

 이렇게 Git으로 관리하기 시작하면 eclipse project에 '?'와 '>' 두 기호를 발견할 수 있다. ? 는 untracked를 의미하고, > 는 수정했을 시 나타나는 것이다. > 는 add를 하게 되면 사라진다.

 

 

 

 

 

 방금 전까지와는 다르게 이제 project에 우클릭을 하여 Team을 선택하면 보이는 것이 달라진다. Git 수업하면서 봤던 여러 명령어들을 확인할 수 있다.

 add한 내용을 commit 하는 기능, 작업하던 내용을 숨기는 stash, fetch, push, pull. 새로 branch를 만들거나, 만든 branch 사이를 옮겨다니는 switch, untracked file을 지워주는 clean, merge, rebase, reset 등등이 있다.

 

 

 

 

 

 아무런 파일을 만든 것이 없는데 왜 '?' 가 뜨는 것일까? commit을 하려고 하면 위 이미지와 같은 화면을 eclipse 하단에서 볼 수 있다. 보이는 '.classpath' file, '.project' file, 그리고 '.settings' folder 아래에 있는 두 file들은 과연 함께 Github repository로 가야할까? 단독 작업하는 공간이라면 상관 없겠지만, 만약에 공동으로 작업하는 공간이라면 어떨까? A라는 사람이 올리고 B라는 사람이 받았을 때 설정이 달라져야한다면, B가 고치고 올린 것을 다시 A가 받아서 고치고 올리는 작업을 반복하게 될 것이다. 사람이 많아지면 아주 난리가 날 것이다. 때문에 .gitignore 파일에 무시할 file들의 목록을 작성하는 것이다.

 수업에서와의 다른 점이라고 한다면, 수업 때는 .gitignore file이 자동으로 생성되었는데 지금은 아니라는 점이다. 그렇게 번거로운 작업은 아니기 때문에 무시하도록 하겠다.

 

 이 gitignore를 작성하기 위해 참고할 페이지가 있다. gitignore.io 라는 곳으로, 작업하고 있는 환경이나 프로그램과 언어를 선택해서 생성 버튼을 누르면 자동으로 gitignore file에 작성할 내용을 대신 작성해준다. 해당 내용을 복사해서 사용하면 된다. 별 걸 다 만들어 둔다.[각주:1]

 

 해당 내용을 복사 붙여넣기 해도 사실 .classpath file과 .project file이 ignore 되지는 않는다. 전자의 경우는 그때도 없었는지는 기억나지 않으나 일단 지금은 없어서 추가해주었고, 후자는 #으로 주석 처리가 되어있어서 해제해주었다.

 

 commit을 진행하면 기존에 활성화되어있지 않던 push 가 활성화되어 있는 것을 볼 수 있다. Location 항목의 URI에는 새로 만든 repository의 URI를 복사해서 넣어주면 자동으로 나머지가 완성된다.

 

 그리고 등장하는 Login 창의 User 항목에는 본인의 Github id를, Password 항목에는 본인이 따로 기록해둔 personal access token을 넣어준다. (기존에는 password였으나 작년 중순에 token을 사용하도록 변경되었다.)

 

 User 정보와 token 정보에 문제가 없다면 이런 화면을 볼 수 있으며, Github repository에 해당 내용이 push된 것을 볼 수 있다.

 

 

 만약에 eclipse에서 해당 project를 지운다면 어떻게 될까? 사실 해당 project를 지운다고 해서 repository가 삭제되는 것은 아니다. 그저 working tree에서 해당 project만 삭제된 것이다. 만약에 repository 자체를 지우고 싶다면 해당 repository를 직접 지워주면 된다.

 

 

 

 그렇다면 clone 해온 project를 eclipse에 넣으려면 어떻게 해야할까? 상단의 File tab에는 Import 라는 친구가 있다. Import를 선택하면 오른쪽 창이 뜨는게 Git 하위에 빨간색으로 표시된 Projects from Git 을 선택한다.

 

 이어서 등장하는 화면에서 Existing local repository 를 선택하고 나오는 화면에서 원하는 repository가 없다면 우측의 Add 버튼을 눌러준다.

 

 Directory 항목에 원하는 repository 의 위치를 Browse 버튼을 눌러서 지정해주고 하단 박스에 클릭을 해주고 마치면 오른쪽 화면에 해당 repository가 새롭게 등장하는 것을 볼 수 있다.

 

 넘어가면 위 이미지와 같은 화면이 나오는데 general project를 클릭하고 Working Tree가 아닌 project를 클릭한다. Working Tree 를 클릭하면 안된다.

 

 그렇게 해서 eclipse에서 볼 수 있는 project의 구조는 기존에 보고 있었던 java project와는 사뭇 다르다. 이를 바꿔주기 위해 오른쪽처럼 project에 우클릭을 해서 Configure > Convert to Faceted Form 을 선택해주면 아래와 같은 창이 뜨는데, Java를 선택해서 apply하면  알고 있던 java project 구조로 바뀐다.

 

 사실 src 이외에 bin, settings 같은 친구들이 있어야 java project라고 할 수 있는 것이긴 하다. 그런데 여기에는 src 뿐이다. 나머지는 무시한 채로 최소한의 것만 올린 것이다. 왜일까? 이것도 작업 환경에 대한 문제라고 했다.

'뒷북 정리 (국비 교육) > git, github' 카테고리의 다른 글

Github(원격저장소 remote repository) : remote, push, fetch, pull, pr  (0) 2022.03.30
Git command : stash  (0) 2022.03.30
Git command : reset  (0) 2022.03.30
Git command : merge  (0) 2022.03.30
Git command : branch  (0) 2022.03.30

댓글