[Git] Github desktop 설치 및 사용법
728x90

깃허브 데스크탑을 일 년 내내 사용했는데 편한 방식으로 정리해 두기로 했다 정석으로 더 잘 쓸 수 있는 방법이 있겠지만 우선 이 정도만 써도 프로젝트를 할 때는 문제가 없다

 

깃허브 데스크탑 설치

https://desktop.github.com

 

GitHub Desktop

Simple collaboration from your desktop

desktop.github.com

위 사이트에서 깃허브 데스크탑을 다운로드해 준다

 

실행하기

다운로드한 뒤 로그인이 완료되면 메인 화면이 뜬다 이곳에서 repository들을 추가할 수 있다

 

repository 연결하기

repository 주소 복사

repository의 code - clone - HTTPS 부분에서 나오는 주소를 복사한다

https://github.com/hxxejx/githubdesktop.git

 

github desktop에서 clone repository

다시 github desktop을 실행한 뒤 current repository와 add를 차례로 클릭, clone repository를 선택한다

github의 repository를 가지고 오는 경우라면 로그인된 계정을 통해 자동으로 목록이 뜬다

만약 외부에서 가져오는 경우라면 위에서 복사했던 주소를 붙여넣기 해 주면 된다

visual studio에서 바로 열기

해당 옵션을 사용하면 메인 화면에서 바로 visual studio로 연결이 가능하다 당연하게도 run도 가능하고 바로바로 저장한 변경값들이 적용 가능해서 편하게 사용했다

 

변경 사항 Commit, push

위의 방법을 통해 visual studio에서 바로 코드를 열 수도 있고, 로컬 폴더에 들어가 직접 코드를 열 수도 있다

열린 코드를 변경한 뒤 저장하면, 바로 github desktop에 변경 사항이 적용된다
왼쪽 아래 파란색 Commit to main 버튼을 클릭하면 commit이 된다
오른쪽 상단과 메인에 있는 Push origin 버튼을 누르면 push가 된다

변경 사항 pull

반대로 다른 사람이 push 한 변경 사항을 당겨 오는 방법이다

오른쪽 상단에 있는 Fetch origin 버튼을 클릭한다
변경 사항이 없다면 변화가 없고, 있다면 Pull origin이 활성화된다. 클릭해 주자
visual studio의 작업물이 자동으로 업데이트된다

Src 아닌 파일 저장하기 - 알고리즘 풀이 저장하기

2022. 12. 05 수정

알고리즘을 풀기 위해 git에서 바로 이클립스로 clone된 파일은 run 등이 되지 않아 로컬에서 실행한 뒤 결과물만 옮기는 방식으로 하고 있다 물론 이클립스에는 git 메뉴가 잘 되어있지만 파일만 따로 정리하는 게 알고리즘을 정리할 때는 깔끔해 보인다

위에서 봤던 이 사진에서 Local path를 내가 사용하는 eclipse 폴더로 설정하면 자동으로 폴더가 생기는데, 그렇게 해도 eclipse에는 폴더가 나오지 않는다 이클립스에서도 바로 폴더를 볼 수 있는 방법을 아래 사진으로 설명하겠다

 

clone repository에서 열고자 하는 폴더 아래로 local path 설정
Package Explorer에서 오른쪽 마우스 버튼 클릭 후 New - Java Project
clone a repository 과정에서 사용한 폴더 이름과 같은 이름을 입력. 그렇게 하면 아래 JRE과 Project layout 설정칸이 변경할 수 없게 변한다
위에 있는 세 폴더는 로컬 폴더, 아래 있는 algorithm 폴더는 깃허브와 연동된 폴더다
로컬 폴더에서 파일을 복사한 뒤 알고리즘 폴더에 붙여넣기를 하면 다음과 같이 깃허브 데스크탑에 자동으로 인식이 된다

 

History 이용하기

Changes 옆에 있는 History를 클릭하면 History를 모두 볼 수 있다
amend(추가적인 commit), revert changes(이미 commit한 내용 되돌리기) 등의 기능을 사용할 수 있다
자동으로 특정 commit을 되돌리는 작업을 실행해 준다 Push origin을 누르면 해당 내용이 push 된다

728x90