목록Git (19)
처음부터 차근차근
$ git remote update 원격의 브랜치를 찾지 못해서 발생하는 fatal: Cannot update paths and switch to branch '브랜치명' at the same time. 라는 오류 메세지 해결해줌. $ git checkout -t origin/브랜치명 원격저장소의 브랜치 가져오기 참고 : https://cjh5414.github.io/get-git-remote-branch/
git log commit 기록을 확인한다. git reset HEAD^ 가장 마지막에 push한(가장 위에 있는) commit 을 삭제한다. git push -f origin "브랜치명" 그리고 내가 commit 을 지웠다는 것을 github 서버에 알려주어 github 내에서도 해당 commit 을 삭제하도록 한다. (원격저장소에 push되어있는 최상단 commit을 삭제한다.) ex) git push -f origin master : master 브랜치에 있는 최상단 commit 삭제 참고 : https://eyeballs.tistory.com/446

git에서 tag란 어떠한 commit을 가리키는 것이다. 어떠한 commit에서 tag를 만들면 그 태그는 변하지 않고 항상 그 commit 만을 가리킨다. 그래서 보통 tag 이름을 버전으로 하여 버전을 기록하는데 사용한다. tag 생성 tag를 생성하는 방법으론 2가지 방법이 있다. 1. light weight tag light weight : 가벼운 태그 이름만으로 생성하는 태그이다. git tag 태그이름 [태그가 가리킬 커밋아이디 or 브랜치명(이 브랜치의 가장 최신 commit 아이디를 태그가 가리킴)] 2. annotated tag annotated : 주석을 달다 태그에 설명을 붙일 수 있는 태그이다. annotated tag를 쓰면 tag를 만든 사람, tag가 가리키는 commit i..

git flow git을 사용해서 작업을 처리하는 방법을 work flow라고 한다. work flow 중 현재까지 많이 사용되는 방법이 gitflow이다. git flow를 사용해서 git을 사용하면 개발 흐름을 구조적으로 한 눈에 볼 수 있다. develop 브랜치를 생성해서 develop 브랜치에다가 개발 관련 commit을 하고, master 브랜치에다가는 최종적으로 사용자에게 배포될 프로그램을 commit한다. tag로 버전을 표시해준다. 기능을 구현할 때는 develop 브랜치에서 'feature-기능이름'으로 브랜치를 새로 생성하여 그 브랜치에다 해당 기능을 구현한다. release 브랜치에는 사용자에게 배포될 프로그램과 bug 수정, 문서 update등의 commit을 한다. release..

gitignore이란? git으로 버전 관리를 할 때 원격 저장소에 보안 상 올라가면 안되는 파일이 있다. 예를 들어 설정 파일, 데이터베이스 관련 문서, gradle파일 등이 있다. 이 파일들을 제외시키고 git의 원격 저장소에 올리는 방법이 바로 gitignore 사용하는 것이다. gitignore이란, 버전 관리에 제외시키는 파일들을 기록해놓는 파일이다. 즉, gitignore에 적혀있는 파일들은 git에 의해 추적되지 않는다. 그래서 gitignore 안에 있는 내용들은 파일에 변경이 있어도 git에서 무시한다. gitIgnore 파일 만들기 gitignore 파일을 만들 때는 최상위 폴더에다 만들어야한다. 최상위 폴더 바로 아래에 .gitIgnore이름으로 파일을 만들고, 그 안에다 추적을 제외..

gitbub 원격 저장소 만드는 방법 github에 원격저장소를 만드는 방법은 매우 쉽다. 1. 먼저 github에 로그인한 뒤 Repositories탭을 클릭한 후 new를 클릭한다. 2. repository의 이름을 정하고 원하는 옵션을 선택한 뒤 CreateRepository를 클릭한다. 끝 원격 저장소와 연결하는 방법 원격 저장소를 연결하는 방법은 2가지가 있다. 이미 만들어져 있는 원격 저장소를 clone(복사)해서 연결한 후 작업하는 방법 이미 작업하고 있는 working directory 내용을 원격 저장소에 올리는 방법 이미 작업한 내용 원격 저장소에 올리는 방법 git remote add origin copy한원격저장소https주소 로컬 원격 저장소 연결하는 방법과 동일하다. '원격저장소..

시작하기 전 git 명령어 모음... git init 디렉토리이름 디렉토리를 만들고 그 안에 git init 실행 cd .. 부모 디렉터리로 이동 pwd 현재 경로 보기 rm -rf 디렉토리명 디렉토리 삭제할건지 묻지 않고 바로 삭제 git commit --amend 최신 commit 내용 수정하기 주의 : 원격 저장소에 push하기 전에 해야함! 로컬에서 원격 저장소 만들기 git init --bare 디렉토리이름 bare : 벌거벗은 디렉토리를 새로 만들어서 그 디렉토리를 원격 저장소로 만드는 명령어이다. --bare로 만든 디렉토리는 작업을 할 수 없고, 오직 저장소의 기능만 한다. 예시) HEAD ~ ref : 본래 .git 안에 들어있는 내용들이다. 오직 저장소의 기능만 하기 때문에 .git 내..

merge 충돌 원리 merge충돌이 생겼을 때 내부적으로 어떻게 되나 gistory를 통해 볼 수 있다. master branch에서 first.txt의 내용 1111로 하고 commit 함(commit 메세지 : first). 다음 ksy branch로 checkout해서 1112로 내용 바꿈. 그리고 commit 함(commit 메세지 : second). master branch에서 first.txt내용 1144로 바꿈. 그리고 commit 함(commit 메세지 : third). 그 다음 master branch에서 ksy branch를 merge함. 이렇게 하면 파일의 같은 부분을 수정하는 것이기 때문에 당연히 충돌이 생긴다. 그래서 현재 충돌된 상황. 이때 gistory로 상태를 보면 다음과 ..