목록Development/Git (54)
컴공생의 다이어리
GitHub 이슈(issue) 템플릿 만들기 깃허브에서 같은 형식의 이슈를 여러번 생성한다면 템플릿을 사용하는 것이 좋다. 오늘은 이슈 템플릿 생성 과정에 대해 정리하고자 한다. 제일 먼저 해당 저장소의 Settings에 들어간다. 그 다음 스크롤해서 Features가 있는 영역에서 Issues 부분의 Set up templates를 클릭한다. 그 다음 아래와 같이 나오면 Custom template을 클릭한다. 그 다음 Preview and edit을 클릭한다. 클릭하면 아래와 같이 나오는데 연필 모양 수정 버튼을 클릭한다. 아래와 같이 나오면 템플릿 명과 설명 그리고 제일 중요한 템플릿 내용을 원하는 내용으로 채워주고 마지막으로 맨 위 Propose changes 버튼을 클릭한다. 참고로 템플릿을 만..
GitKraken 설치 GitKraken은 소스트리(SourceTree), GitHub Desktop과 같은 Git의 GUI 툴이다. 오늘은 깃크라켄 설치방법에 대해 정리하고자 한다. 아래 사이트에 접속해서 자신의 운영체제에 맞는 설치파일을 다운로드 한다. https://www.gitkraken.com/download Download Free Git Client - Windows, Mac, Linux | GitKraken Download the free Git client for Windows, Mac & Linux! GitKraken Git GUI is free for use with public repositories. Join leading companies like Google, Microsoft..
[Git] Shallow Clone(git clone --depth) 한 후에 이전 히스토리(history) 복원 저장소의 전체 이력 중 일부만 받아오는 Shallow Clone을 하고 난 뒤, 받아왔던 커밋 말고도 이전 커밋을 가져올 수 있다. 만일, Shallow Clone을 한 후 저장소의 일부 커밋이 아닌 전체 커밋 히스토리를 불러오려면 아래 명령어를 입력하면 된다. git fetch --unshallow 그 다음 만일 최신 커밋을 포함해 n개의 커밋을 추가적으로 불러오고 싶다면 아래 명령어를 입력하면 된다. git fetch --depth={숫자(n)} # example git fetch --depth=15 https://nochoco-lee.tistory.com/200 25.1: Shallow..
Git 커밋 히스토리 없이 혹은 일부 히스토리만 클론 - Shallow Clone 깃 원격 저장소에서 커밋 히스토리가 아래와 같이 많이 쌓여있지만 필요에 따라 히스토리들을 모두 가져오지 않고 일부 히스토리만 가져오거나 히스토리 없이 클론할 수 있는데 이를 Shallow Clone이라고 한다. 히스토리 없이 원격 저장소 clone 히스토리 없이 원격 저장소의 최신 상태만 클론하고 싶다면 아래와 같은 명령어를 입력하면 된다. git clone --depth 1 {원격 저장소 주소} # example 1 git clone --depth 1 git@github.com:CodeDiary18/TEMP.git # example 2 git clone --depth 1 https://github.com/CodeDiary..
Git Cannot create a new backup.~ 관련 에러 Git에서 filter-branch를 사용하다보면 간혹 아래와 같은 에러가 나올 때가 있다. Cannot create a new backup. A previous backup already exists in refs/original/ Force overwriting the backup with -f 이를 해결하기 위한 방법으로 두가지 정도를 찾을 수 있었다. 첫번째는 git filter-branch 뒤에 -f 혹은 -force를 추가해서 사용하면 된다. 아래는 예시이다. git filter-branch -f --env-filter ' 두번째는 아래 명령어를 통해 백업을 제거한 뒤, 다시 작업하려고 했던 명령어를 입력하면 된다. git ..
GitHub 내 타임라인과 커밋 시간이 일치하지 않는 경우 깃허브 내 타임라인이 아래의 첫번째 사진과 같이 나올 것이라고 생각했는데 rebase 명령어를 사용한 후 실제 커밋 시간과 다르게 깃허브의 타임라인 시간과 일치하지 않는 일이 발생했다. 이 경우, 아래 명령어를 입력해준 뒤 git push -f 명령어로 원격저장소로 push하면 해결할 수 있다. git filter-branch --env-filter 'export GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"' # 'Cannot create a new backup. ~' 에러 발생시 git filter-branch -f --env-filter 'export GIT_COMMITTER_DATE="$GIT_AUTHOR_DATE"'..
Git 히스토리(커밋(Commit)의 날짜와 시간) 변경 : rebase 사용 깃에서 커밋의 날짜와 시간을 rebase를 사용해 변경하는 방법에 대해 정리하고자 한다. fiter-branch를 사용해서 커밋을 변경하고 싶다면 아래 게시물에 정리되어 있으니 이를 참고하면 좋을 것 같다. [Git] 깃 히스토리(커밋(Commit)의 날짜와 시간) 변경 : filter-branch 사용 깃 히스토리(커밋(Commit)의 날짜와 시간) 변경 : filter-branch 사용 깃 히스토리를 변경하기 위해서 필터링 기능을 이용하는 방법이 있다. 다만 모든 커밋 내역을 살펴보며 필터링을 수행한다는 점 computer-science-student.tistory.com 아래의 로그에서 빨간색으로 표시한 커밋의 날짜와 시..
Git 최초(initial) 커밋 rebase로 수정 Git rebase 명령어로 제일 최초(처음) 커밋을 수정하려면 아래와 같은 명령어를 입력하여 수정할 수 있다. git rebase -i --root 위 명령어를 입력하고 rebase 작업을 진행해주면 된다. https://github.com/HomoEfficio/dev-tips/blob/master/Git%20%EC%B5%9C%EC%B4%88%20%EC%BB%A4%EB%B0%8B%20Author%20%EC%88%98%EC%A0%95.md GitHub - HomoEfficio/dev-tips: 개발하다 마주쳤던 작은 문제들과 해결 방법 정리 개발하다 마주쳤던 작은 문제들과 해결 방법 정리. Contribute to HomoEfficio/dev-tips..
[Git] 특정 커밋(commit) 삭제 : rebase 사용 깃에서 특정 커밋을 삭제하려면 rebase명령어를 사용해서 삭제할 수 있다. 다음과 같이 로그가 있을 때 아래 표시한 커밋을 제거해보겠다. 제거하려고 하는 커밋의 이전 커밋 id를 git rebase -i 뒤에 넣어서 명령어를 입력해준다. 이 게시물의 예제로는 example 주석 밑의 명령어를 입력하면 된다. git rebase -i {제거하려고 하는 커밋의 직전 커밋 id} # example git rebase -i c0787fe491870f590a rebase 명령어를 입력하면 아래와 같은 화면이 나오는데 제거하려고 하는 커밋이 제일 위에 있을 것이다. 여기서 제거하려는 커밋의 작업 타입을 pick에서 d 혹은 drop으로 변경하고 저장 ..
GitHub 실수로 삭제한 저장소(Repository) 되살리기 깃허브에서는 삭제한 저장소를 복구하는 것이 가능하다. 오늘은 저장소를 복구하는 방법에 대해서 정리하고자 한다. 제일 먼저 프로필 사진을 누르고 Settings 탭을 클릭한다. 그리고 좌측의 Repositories 탭을 선택한 후 아래와 같이 화면이 나오면 Deleted repositories 탭이 나오면 클릭한다. 아래와 같이 삭제된 저장소 목록에서 복구하려는 저장소 옆에 있는 Restore 버튼을 클릭한다. (아래 캡처에서 파란색 부분에 있듯이 삭제하고 난 후 Deleted repositories 리스트에 표시되는데 최대 1시간이 걸릴 수 있으며 fork가 없거나 fork되지 않은 Repository만 복원 가능하다.) Restore 버튼..