목록깃 (22)
컴공생의 다이어리

Git 여러 커밋(commit) 하나로 합치기 이 글에서는 여러 커밋을 하나로 합치는 방법에 대해 정리하고자 한다. 만일 아래와 같이 커밋이 있다고 하자. 아래처럼 자잘자잘하게 나눠서 여러번 커밋했을 때 하나의 커밋으로 통합하고 싶을 수 있을 것이다. 이때, rebase의 -i 옵션을 사용해서 커밋을 통합할 수 있다. 만일 위의 사진에서 첫번째 커밋 부터 세번째 커밋까지 통합하고 싶다면 git rebase -i HEAD~3 명령어를 입력하면 된다. git rebase -i HEAD~(통합갯수) # ex git rebase -i HEAD~3 위의 명령어를 입력하면 아래 왼쪽 사진과 같이 3개의 커밋에 대해서 pick이라고 되어 있는 부분이 있을 것이다. 맨 위의 커밋을 제외하고 나머지 pick을 s 혹은 ..
Git 원격 저장소 주소 변경 기존 원격 저장소 주소를 변경하기 위해서는 git remote set-url 명령어를 사용하면 된다. 변경하기 전 현재 로컬 git 저장소가 어느 원격 저장소와 연결되어 있는지 보고 싶다면 아래와 같이 git remote -v 명령어를 입력해 확인할 수 있다. git remote -v # origin https://github.com/user/repo.git (fetch) # origin https://github.com/user/repo.git (push) 확인 후 git remote set-url origin 를 입력하면 원격 저장소 주소가 변경된다. git remote set-url origin https://github.com/user/변경할repo.git http:..
깃 로컬 저장소 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..
깃허브 리포지토리(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대신에 숫자 넣어줘야 함 ..

원격저장소의 새로운 커밋을 로컬저장소에 갱신(git pull) 1. 갱신할 로컬저장소에서 오른쪽 마우스 버튼을 클릭해 Git Bash Here를 선택 2. [git pull origin paster]를 사용해 파일을 갱신 (pull은 새로운 커밋이 있다면 그걸 나의 로컬저장소에 받아오라는 명령어) www.yes24.com/Product/Goods/85382769 팀 개발을 위한 Git, GitHub 시작하기 개발자, 디자이너, 기획자 다함께 깃·깃허브 입문이 책은 시나리오를 곁들인 실습으로 시작해서 깃과 깃허브를 처음 접하는 사람 또는 좀 더 깊은 난이도에서 깃과 깃허브를 다루고 싶은 개발 www.yes24.com

GitHub 원격저장소의 커밋을 로컬저장소에 내려받기(git clone) 원격 저장소의 코드와 버전 전체를 내 컴퓨터로 내려받는 것을 클론(clone)이라고 한다. 클론을 하면 최신 버전뿐만 아니라 이전 버전들과 원격저장소 주소 등이 내 컴퓨터의 로컬저장소에 저장된다. 1. 클론받으려고 하는 내컴퓨터의 로컬저장소에 오른쪽 마우스 버튼을 누르고 Git Bash Here을 클릭 2. clone하고 싶은 github의 repository의 주소를 복사 3. [git clone "원격저장소 주소" .]를 입력 (원격저장소 주소 뒤에 .(마침표)를 찍지 않으면 [git clone 연습] 폴더 안에 [git-practice]라는 폴더가 생성됨) 4. README.txt 파일을 아래처럼 수정하고 저장 5. Bash창..

GitHub 원격 저장소에 커밋 올리기(git push) 1. GitHub에서 repository를 하나 생성 2. 'git-practice'라는 원격저장소가 생성되었으면 원격저장소 주소를 복사 (원격저장소 이름은 만드는 사람마다 다름) 3. 원격저장소와 연결할 폴더에서 Bash창을 연다. 4. Bash창에 [git remote add origin 원격저장소 주소]를 입력 5. [git push origin master]명령어를 입력해 로컬저장소에 있는 커밋들을 원격저장소에 올린다. www.yes24.com/Product/Goods/85382769 팀 개발을 위한 Git, GitHub 시작하기 개발자, 디자이너, 기획자 다함께 깃·깃허브 입문이 책은 시나리오를 곁들인 실습으로 시작해서 깃과 깃허브를 처음..

Git과 연결할 로컬저장소 생성(git init)에서 생성했던 README.txt 파일을 커밋으로 만들어보자! 커밋(commit) 만들기(git commit) 1. 작업하고 있던 폴더에서 오른쪽 마우스 버튼을 클릭하고 Git Bash Here를 클릭 2. Bash 창에 버전관리를 위한 내 정보를 등록 [git config --global user.email "이메일 주소"]와 [git config --global user.name "내 이름"] 2개의 명령어를 입력 3. 커밋(commit)에 추가할 파일(README.txt)을 선택 후 아래와 같이 명령어 입력 4. 아래와 같은 명령어로 커밋에 상세 설명을 적을 수 있음 ("1 file changed, 1 insertion(+)"가 나오면 성공) 5. 4..