본문 바로가기

dev/GIT

(13)
Intellij Github upload 인텔리제이에서 생성한 프로젝트를 Github에 올리는 방법입니다. 참고로 저는 인텔리제이 한글 언어 팩을 적용해서 사용중입니다.  "버전 관리 > Git 저장소 생성" 을 선택하여 로컬 저장소를 생성합니다.  생성할 저장소 위치를 선택하고 확인 버튼을 선택합니다.  "Git > GitHub > GitHub에 프로젝트 공유" 를 선택합니다.  저장소 이름을 입력하고 "공유" 버튼을 클릭합니다.  "Git > 원격 관리" 를 선택합니다.  원격 저장소 링크를 확인하고 "확인" 버튼을 선택합니다.  커밋할 파일들을 선택하고 커밋 메시지 입력한 뒤에 "커밋 및 푸시" 버튼을 선택합니다.  방금 커밋한 내용이 반영되었음을 확인할 수 있습니다.
GitHub token 생성 GitHub token이 만료되는 경우 다시 생성하는 방법입니다. GitHub 로그인 후 메인 화면에서 오른쪽 상단 설정에서 Settings를 선택합니다. Settings 화면에서 Developer settings를 선택합니다. 화면 왼쪽 Personal access tokens -> Token(classic)을 선택한 다음에 화면 오른쪽 Generate new token -> Generate new token(classic)을 선택합니다. token 정보 입력 화면에서 token 이름과 유효기간, 범위를 선택합니다. Generate token 버튼을 선택합니다. token이 생성된 것을 확인할 수 있습니다. token 값은 생성된 화면 지금에서만 확인할 수 있으니 따로 복사해야 합니다 이렇게 새로 생성..
git commit revert git commit을 잘못한 경우 되돌리려면 reset을 해도 되지만 commit 이력을 남기고 싶다면 revert를 사용하면 됩니다. revert 할 commit을 선택한 뒤 "Revert Commit"을 클릭합니다. 해당 commit이 revert 된 것을 확인할 수 있습니다. revert를 하게 되면 해당 commit의 작업 이력은 제거되지만 commit이력은 남아있기 때문에 history 관리 측면에서 유용합니다.
git commit reset 로컬 저장소에 commit을 잘못해서 삭제해야 하는 경우 reset을 사용하면 됩니다. reset은 기존 commit 이력을 지우는 것입니다. 삭제하려는 "Test Class commit2" 메시지의 commit과 코드입니다. "Test Class commit2"라는 commit을 취소하려면 그 이전의 commit을 선택하고 Reset을 클릭합니다. 여기서 reset 옵션에 대해 설명드리면 Soft: commit을 삭제하고 이력에서 제거하지만, 작업 트리와 인덱스는 제거하지 않음 Mixed: commit을 삭제하고 이력에서 제거하고 인덱스는 제거하지만, 작업 트리는 변경하지 않음 Hard: commit을 삭제하고 이력에서 제거하고 인덱스와 작업트리의 변경 내역까지 모두 제거 cf) 작업트리: 프로젝트 파..
git group import project git에 있는 프로젝트를 그룹으로 옮기는 것은 어렵지 않습니다. gitlab에 로그인해서 Groups를 선택하고 New project버튼을 클릭합니다. Import project를 선택합니다. Repo by URL을 선택합니다. Git repository URL에서 옮기는 기존 프로젝트 정보를 "아이디:패스워드@git주소" 이렇게 입력해야 합니다. Project path에서 옮기는 그룹을 선택하고 프로젝트 이름을 입력합니다. Project description은 선택사항이지만 입력합니다. Visibility Level은 Internal로 선택하고 Create project 버튼을 클릭합니다. 프로젝트가 생성되었고 기존 프로젝트 파일들을 옮기고 있는 것을 확인합니다. 기존 프로젝트 파일들이 새로운 프로젝트..
master branch merge master 브랜치를 다른 브랜치와 merge 하는 것은 어렵지 않습니다. 프로젝트 마우스 우클릭 해서 Team -> Merge를 선택합니다. merge 할 브랜치와 merge 옵션, Fast forward 옵션을 선택하고 merge 버튼을 클릭합니다. 여기서 저는 dev 브랜치를 선택했습니다. merge 했는데 충돌이 발생했는데 그 이유는 master 브랜치가 dev 브랜치와 분기 이후에 commit이 있었는데 같은 파일의 같은 위치를 수정했기 때문입니다. 다시 얘기하면 dev 브랜치가 가지고 있는 master 브랜치 이력이 현재 master 브랜치 이력과 맞지 않기 때문입니다. 따라서 이런 경우 Merge Tool을 이용해서 충돌을 해결할 수 있습니다. 이렇게 충돌난 부분을 비교하면서 수정하면 됩니다..
git Nothing to fetch git Nothing to fetch 에러를 해결하는 방법입니다. 위와 같은 에러가 발생하는 이유는 여러가지가 있지만 저의 경우는 원격 저장소에 대한 정보가 없기 때문입니다. 원격 저장소에 설정을 수정하기 위해 Git repository에서 Properties를 선택합니다. Add Entry를 선택합니다. Key와 Value에 대해 설명하면 remote.origin.fetch: 원격 저장소로부터 가져올 브랜치 지정 +refs/heads/*:refs/remotes/origin/*: 원격 저장소의 모든 브랜치 이렇게 되어있는데 정리하면 원격 저장소의 모든 브랜치를 가져오겠다는 뜻입니다. 속성을 저장하고 다시 pull을 받으면 정상적으로 실행됩니다.
git bash ssh login git bash로 리눅스 서버 접속하는 방법은 여러 가지가 있습니다. "ssh 서버계정@서버IP -p 포트번호"로 접속할 수 있습니다. 아니면 서버접속 정보 기억하기 어려우면 아래와 같이 config 파일 작성해서 접속하면 됩니다. config 파일 내용을 보면 1번째 라인: 접속할 서버 별명 2번째 라인: 서버 IP 3번째 라인: 서버 계정 4번째 라인: 서버 접속 포트 5번째 라인: rsa 개인키 파일 위치 이런 식으로 작성할 수 있고 접속할 서버 정보를 여러 개 저장할 수 있습니다. config 파일에 있는 "dev-server"에 접속하면 위 화면처럼 잘 되는 것을 확인할 수 있습니다.