목록commit (10)
컴공생의 다이어리
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으로 변경하고 저장 ..
트랜젝션 제어어(TCL, Transaction Control Language) 트랜젝션 제어어는 데이터 조작어(DML) 명령어 실행, 취소, 임시저장할 때 사용하는 명령어이다. 트랜젝션(Transaction)은 분할할 수 없는 최소 단위이며 논리적인 작업 단위이다. 실행(COMMIT) 실행(COMMIT)은 모든 작업을 최종 실행하는 명령어이다. /* 실행 */ COMMIT; 취소(ROLLBACK) 취소(ROLLBACK)은 모든 작업을 되돌리는 명령어이다. /* 취소 */ ROLLBACK; /* 특정 SAVEPOINT로 돌아가려면 */ ROLLBACK TO 임시저장_이름; 임시저장(SAVEPOINT) 임시 저장(SAVEPOINT)은 ROLLBACK 저장점을 지정하는 명령어이다. /* SAVEPOINT 지정..
깃 원격저장소(깃허브)에 올라간 커밋 제거(되돌리기) 깃에서 작성한 커밋들을 되돌리고 싶을 때, 아직 원격저장소로 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 리포지토리는 ..
깃에서 커밋(commit) 대상 제외하기 깃과 연결된 로컬 저장소에서 특정 파일이나 폴더를 커밋 대상에서 제외를 하려면 .gitignore 파일을 사용하면 된다. .gitignore 파일을 생성하는 방법으로는 GitHub에서 repository를 생성할 때, .gitignore 파일을 생성하는 옵션을 넣어놓거나 로컬 저장소에 .git 폴더가 위치한 디렉터리에 .gitignore 파일을 생성하면 된다. .gitignore 파일을 생성했으면 제외하고 싶은 폴더나 파일을 입력해주면 된다. devbirdfeet.tistory.com/31 Git(8) .gitignore 이란 GitHub를 사용하는 법 대한 깃 포스팅 순서이다. 1. Git(7) 원격저장소 생성하기 2. Git(8) .gitignore 이란 3...
트랜잭션(Transaction)이란? 인가받지 않은 사용자로부터 데이터를 보장하기 위해 DBMS가 가져야 하는 특성이자, 데이터베이스 시스템에서 하나의 논리적 기능을 정상적으로 수행하기 위한 작업의 기본 단위 트랜잭션의 특성 특성 설명 주요기법 원자성 (Atomicity) - 분해가 불가능한 작업의 최소단위 - 연산 전체가 성공 또는 실패 - 하나라도 실패할 경우 전체가 취소되어야 하는 특성 - Commit/Rollback - 회복성 보장 일관성 (Consistency) - 트랜잭션이 실행 성공 후 항상 일관된 데이터베이스 상태를 보존해야하는 특성 - 무결성 제약조건 - 동시성 제어 격리성 (Isolation) - 트랜잭션 실행 중 생성하는 연산의 중간 결과를 다른 트랜잭션이 접근 불가한 특성 - Rea..
GitHub란 GitHub는 소프트웨어 개발 프로젝트를 위한 소스코드 관리 서비스이다. 소스코드를 열람하고 간단한 버그 관리, SNS 기능까지 갖추고 있다. GitHub를 사용하여 버전 관리를 실시하고 있는 기업도 많다. GitHub 관련 지식 커밋(commit)과 푸시(push) 커밋 : 파일을 추가하거나 변경 내용을 저장소에 저장하는 작업 푸시 : 파일을 추가하거나 변경 내용을 원격 저장소에 업로드하는 작업 로컬 저장소(Local Repository)와 원격 저장소(Remote Repository) 저장소는 파일이나 디렉토리를 저장하는 장소이다. 변경 이력을 관리하고자 하는 디렉토리 등을 저장소의 관리하에 두는 것으로, 그 디렉토리에 있는 파일 등의 변경 내역을 기록할 수 있다. 로컬 저장소 : 현재..