# Github - Intellij 연동 및 사용




(1) Intellij 환경설정



 

① Git 실행설정

Intellij 실행 후 아래와 같이  [File] > [Settings]  메뉴로 진입하여 설치한 Git의 실행파일 경로를 지정한다. [*Git 설치 및 환경설정 : 이전 포스팅 참조]





② Git Repository 생성

생성한 Project를 Git을 통해 관리하기 위해   Git Repository 를 생성해야 한다. 



팝업된 폴더 선택 창에서 관리하고자 하는 Project폴더를 선택 후  OK  를 선택하여 VCS등록을 마친다.

※ 기존 Local Project를 Git에 최초로 Push사용 시 주의사항 [*Local Project를 Git으로 최초 Push : 이전 포스팅 참조]



③ GitHub 계정등록

 GitHub와 연동을 위해 생성한 GitHub계정을 Injtellij에 등록하여 자동로그인을 설정해야 한다. [*Git 회원가입 : 이전 포스팅 참조]





(2) Intellij를 이용한 Add, Commit, Push



 

① Add를 통한 스테이징  ($git add [ <파일명> | * ])

 Commit  Add 를 통해 준비영역(Staging)에 코드를 저장하는 작업이다. 확정 전 준비하는 단계이다. Project 폴더에서 마우스 우클릭 후  Git > Add  메뉴 혹은  단축키 Ctrl + Alt + A 를 통해  Add 할 수 있다.

 

  


② Commit을 통한 확정  ($git commit -m "commit 설명")

Commit을 통해  Local Repository(Head) 에 코드를 저장하는 작업이다. 즉, 변경사항을 확정하여 Local에 저장하는 단계이다. Project폴더에서 마우스 우클릭 후  Git > Commit Directory  메뉴를 통해  Commit Message  입력 후  Commit  할 수 있다. 이때 Project내 Warning, Error 코드 등의 정보도 확인할 수 있다.




Add 및 Commit시 변경된 파일의 Font-Color의 의미는 아래와 같다.

    • Red - Workspace Files

    • Green - Staged Files

    • Blue - Modified Files

    • White - Commited Files

    • Gray - Deleted Files



 Push를 통한 발행  (Exist : $git push origin [master | branch]  /  New : $gir remote add origin [원격서버주소])

Push를 통해  Local Repository 에서  Remote Repository 로 변경코드를 발행하는 단계이다. 이때, GitHub의 지정된 Branch에 변경코드가 저장이 된다.






#  Error - Push rejected : Updates were rejected because the tip of your current branch is behind its remote counterpart. Integrate the remote changes before pushing again. ?

Git이 아닌 Local에서만 작업하던 Project를 처음 Push할 경우 발생한다. GitHub를 통해 새로운 Remote Repository 생성 시 "README.MD", "License"등의 파일들이 생성되고, 기존에 있던 Local Project를 Push할때 Sync가 맞지 않아 에러가 발생한다. 즉, Git에서 Pull을 받지 않아 init을 하더라도 전체 파일정보가 맞지 않아 발생한다. [*Local Project를 Git으로 최초 Push : 이전 포스팅 참조]





(3) Intellij를 이용한 Clone



 

① Clone을 이용하여 Repository 가져오기

Git에서  Checkout 기능을 하는 것은  Clone 이다. 즉, Remote Repository 의 소스코드를 Local Repository로 가져오는 것이며, Local에 가져옴과 동시에 Local Repository를 생성한다. 




다른 카테고리의 글 목록

Development/Intellij Idea 카테고리의 포스트를 톺아봅니다