목록Git (39)
컴공생의 다이어리

Git .gitignore 자동 생성 운영체제, 개발환경, 프로그래밍 언어를 입력하면 자동으로 .gitignore를 만들어 주는 사이트가 있다. 바로 아래의 사이트이다. https://www.toptal.com/developers/gitignore gitignore.io Create useful .gitignore files for your project www.toptal.com 표시한 영역에 아래처럼 자신의 개발환경에 맞는 조건을 검색하고 생성 버튼을 누르면 조건에 맞는 .gitignore이 생성된다. 더보기 더보기 # Created by https://www.toptal.com/developers/gitignore/api/pycharm,python,jupyternotebooks # Edit at h..
원격 저장소(remote repository)의 branch를 로컬 저장소(local repository)로 가져오기 로컬 저장소에 원격 저장소를 clone하면 원격 저장소의 모든 branch가 clone되는 것이 아니라 main branch만 clone된다. 이번 게시물은 원격 저장소의 branch를 로컬 저장소로 가져오는 방법에 대해 정리하고자 한다. 우선 로컬 저장소와 원격 저장소의 branch를 확인하기 위해서 아래 명령어를 입력한다. git branch -a 이때, 만일 clone한 이후에 다른 사람이 원격 저장소에 branch를 생성했을 수 있으니 한번씩 원격 저장소의 정보를 업데이트 해주는 아래 명령어를 한번씩 입력해주는 것이 좋다. git remote update 원격 저장소의 branch..

컴퓨터에 github 계정 여러개 연동하기 : ssh-key 발급, 등록 github 계정이 부캐처럼 몇개 있는데 컴퓨터에서 각각의 계정에 대한 repository를 clone하고 commit을 push하는 것을 나는 Github Desktop을 사용해서 관리했다. 하지만 Github Desktop을 사용해서 repository를 관리하려면 매번 로그인과 로그아웃을 반복해야 했으며 간혹 아래 사진의 체크한 부분이 제대로 내 프로필이 맞는지 확인하지 않으면 간혹 다른 계정으로 커밋이 되는 경우가 있어서 커밋이 꼬이는 경우가 있었다. 그동안 계정 여러개가 있을 때, ssh key를 사용하면 된다는 것은 알고 있었지만 복잡할 것 같아 외면하고 있었는데 이제는 사용해야겠다고 생각되어 이 글을 정리하게 되었다. ..
깃 사용자(user) 이름(name) 및 이메일(email) 확인git config user.name # 이름 확인git config user.email # 이메일 확인 깃 사용자(user) 이름(name) 및 이메일(email) 변경git config --global user.name "홍길동" # 이름 변경git config --global user.email "gildongHong@test.com" # 이메일 변경 깃 사용자(user) 이름(name) 및 이메일(email) 삭제# 설정된 사용자를 지울 때,git config --unset user.name # 이름 삭제git config --unset user.email # 이메일 삭제# gloabal로 설정된 config 사용자를 지울 경우,..
깃 로컬 저장소 default branch 변경하기 깃허브에서 default branch가 master에서 main으로 변경되었지만 깃에서는 여전히 default branch가 master이다. 따라서 깃이 깃허브와 같이 default branch를 main으로 변경해주기 위해서는 아래와 같은 명령어를 cmd혹은 git bash창에서 입력해주면 된다. git config --global init.defaultBranch main 이 설정은 단 한번만 해주면 된다. 출처 : 인프런, 코딩은 실전이다! - Git알못을 위한 깃린이코스(Git, Github 실습위주)
깃 히스토리(커밋(Commit)의 날짜와 시간) 변경 : filter-branch 사용 깃 히스토리를 변경하기 위해서 필터링 기능을 이용하는 방법이 있다. 다만 모든 커밋 내역을 살펴보며 필터링을 수행한다는 점에서, 프로젝트의 규모가 클수록 오랜 시간이 걸릴 수 있다. 우선 git log를 bash창에 입력해 변경할 커밋의 해시값을 찾는다. git log 그리고 아래와 같이 필터링을 사용해서 날짜를 수정해주면 된다. git filter-branch -f --env-filter \ 'if [ $GIT_COMMIT = {Commit 해시 값} ] then export GIT_AUTHOR_DATE={변경할 날짜와 시간} export GIT_COMMITTER_DATE={변경할 날짜와 시간} fi' # examp..
깃(Git) 특정 브랜치(branch)만 clone하는 방법 git clone -b {브랜치이름} --single-branch {저장소 url} 을 git bash 창에 입력해주면 된다. git clone -b {branch_name} --single-branch {저장소 URL} # ex) git clone -b release --single-branch https://github.com/CodeDiary18/Test https://www.slipp.net/questions/577 git에서 특정 브랜치만 clone하는 방법 git을 사용하다 브랜치 전체를 clone하지 않고 특정 브랜치 하나만 clone하는 것이 가능하다. 특히 브랜치가 많은 경우 이 방법을 사용할 수 있다. git clone -b ..
깃허브 리포지토리(Repository) 합치기 깃허브 여러개의 리포지토리를 하나로 합치는 방법에 대해 정리하고자 한다. 1. 일단 깃허브에서 기존 리포지토리들을 합칠 새로운 리포지토리를 하나 생성한다. 2. 그런 다음 생성한 리포지토리를 git clone 명령어를 통해 로컬에 clone한다. 3. clone한 폴더로 이동한 뒤 git bash창을 열어준다. 4. subtree를 이용하는 아래 명령어를 통해 리포지토리를 합쳐준다. git subtree add --prefix=(해당 Repository 하위의 디렉터리 구조) (옮겨올 Repository 주소) (옮겨올 Repository의 branch) 5. git push를 해준다. https://hanco.tistory.com/9 깃허브 리포지토리(Re..
깃 원격저장소(깃허브)에 올라간 커밋 제거(되돌리기) 깃에서 작성한 커밋들을 되돌리고 싶을 때, 아직 원격저장소로 push 하지않은 경우에는 '$git reset {commit_id}'명령어로 원하는 상태로 원상복구할 수 있다. 하지만, 이미 원격저장소(깃허브)로 push 해버린 경우에는 로컬에서 커밋을 되돌린 후에 강제로 push를 해야한다. 우선 로컬에서 되돌리고 싶은 커밋으로 가기 위해 아래와 같은 명령어를 입력하면 된다. 둘 중에 하나만 써야 한다. 아래의 명령어 중 두번째 명령어에 n대신에 숫자를 넣어줘야 한다. git reset --hard HEAD^ #바로 이전 커밋으로 돌아감 git reset --hard HEAD~n #위에서부터 n만큼 아래의 커밋으로 돌아감 #n대신에 숫자 넣어줘야 함 ..

.gitkeep 파일은 무엇인가? gitkeep 파일은 Git 사용자가 만든 빈 파일이다. Git 저장소가 빈 프로젝트 디렉토리를 유지한다. 우리가 만약에 A라는 빈폴더를 생성하고 커밋을 하려고 하면 Git 저장소에 A폴더가 커밋되지 않는다. 이럴 때 gitkeep파일을 A라는 폴더에 넣으면 A폴더가 커밋이 된다. 또 만일 B라는 폴더에 있던 다른 파일들이 모두 삭제되더라도 gitkeep 파일이 있으면 B폴더는 커밋할 때 없어지지 않고 유지된다. gitkeep 비어있는 폴더 커밋 가능 https://whatext.com/ko/gitkeep GITKEEP 파일 확장자-여는 방법? GITKEEP는 Git Keep File입니다. GITKEEP 파일은 Git 사용자가 생성하는 빈 파일로, Git 리포지토리는 ..