reset 은 HEAD 포인터의 위치를 다른 커밋개체로 이동 시킵니다.


1. merge 의 취소


직전 merge 를 취소하고 다시 작업을 하고 싶다면


> git reset --merge ORIG_HEAD

or

> git reset --hard ORIG_HEAD


2. commit 의 취소


> git reset [--soft/mixed/hard] <TARGET_VERSION>


soft : index, work tree 둘다 유지합니다. 약간의 오타만 수정하여 다시 커밋하고 싶을때 유용합니다.

mixed : 미지정시 기본값, index는 취소 work tree만 유지합니다.

hard : index, tree 모두 제거 합니다.


TARGET_VERSION 에 HEAD포인터의 위치를 지정한다.


HEAD 의 여러 표현방법 (1.8.4 버전부터 @ 표식을 대신 사용할 수 있다.)


HEAD^[n] : n번째 부모 버전  (the parent of HEAD), 생략시 1


HEAD~[n] : n번째 부모의 부모. (the first parent of the first parent or the grandparent)


HEAD~ 와 HEAD^ 는 같은 대상이지만 특정숫자들을 입력하면 대상이 달라진다. (HEAD^4 와 HEAD~4 는 다르다.) 하지만 다음 예제는 같은 커밋개체을 가르킨다.


HEAD^^^ == HEAD~3    (HEAD^^^ 가 첫번째부모의 첫번째부모의 첫번째부모 노드를 뜻하므로 같은 값을 가르킨다.) 



3. ORIG_HEAD


.git/ORIG_HEAD 파일에 저장되는 포인터. HEAD의 이전 포인터 정보를 가진다. ( HEAD@{1}, HEAD^, HEAD~ )



Posted by KENSIN
,

ppt (power point, 파워포인트) 2010 단축키 모음.


텍스트 상자 선택 과 텍스트 입력 전환.


개체선택안됨  --[TAB, 클릭]->  개체선택  --[F2, ENTER]->  텍스트입력


개체선택안됨  <-[ESC]--  개체선택  <-[F2, ESC]--  텍스트입력



들여쓰기, 내어쓰기


들여쓰기 : [Shift + Alt + →]


내어쓰기 : [Shift + Alt + ←]



개체의 "서식"을 복사하고 붙이기


복사 할 개체를 선택하고 [Ctrl + Shift + C]


적용 할 개체를 선택하고 [Ctrl + Shift + V]


크기등이 변하지는 않는다.



선택하여 붙여넣기 [Ctrl + Alt + V]



개체의 이동


마우스 사용시


(자동으로 붙는)자석 기능없이 자유롭게 이동 하고 싶을 경우 [Alt]


정확히 수평, 수직으로 이동하고 싶을 경우 [Shift]


복사 하고 싶은 경우 [Ctrl]


키보드 사용시


키보드 화살표로 이동시 5픽셀씩 이동한다.


1픽셀씩 세밀하게 움직이고 싶다면 [Ctrl + 방향키]


개체의 크기 조절 [Shift + 방향키] Ctrl 추가시 1px


개체의 기울기 조절 [Alt + 방향키(좌,우)] Ctrl 추가시 1px

우측키 누르면 시계방향으로 15도 기울어진다. 좌측은 반대.


빠른 실행 도구 사용자 모음의 사용


화면 최상단의 작은 아이콘 메뉴들은 빠른 실행 버튼들입니다. 왼쪽부터 순서대로 [Alt + 번호(숫자키)] 로 작동합니다.


기본이라면 아마 Alt+1 의 위치에 저장하기가 있습니다. 저는 이곳에 개체 '맨앞으로보내기', '맨뒤로보내기' 를 설정하여 Alt+1, +2 의 두개 단축키로 편하게 사용하고 있습니다. 입맞에 맞춰 자주 쓰는 기능을 올려두면 매우 편합니다.



개체 복사


Ctrl + C, V 를 이용해도 되지만 두번누르기도 귀찮다면 [Ctrl + D]


단지 귀찮은것 이외에도 좀더 장점이 있다면.. C,V를 사용하면 계속해서 오른쪽 하단에 대각선 방향에 생성된다. 하지만 D를 사용할 경우 복사 후 바로 마우스로 위치를 잡아주고 계속해서 D를 누르면 위치를 기억하고 계속해서 해당 방향으로 복사가 된다. 리스트 형식으로 만들때 매우 편하다.


마지막에 했던 행동의 반복 행동


했던 작업을 반복하는 경우 [F4] 를 이용해 보자.


폰트 사이즈 조정


글자 크게 [ Ctrl + ] ]


글자 작게 [ Ctrl + [ ]

Posted by KENSIN
,

Git branch 이해

버전관리 2015. 2. 21. 00:22

git의 각 브랜치와 head 의 위치 이동에 대해 게임과 비교해 보았다.


git 의 커밋객체는 각 파일에 대한 정보, 그리고 tree 구조를 함께 저장한다. 그리고 이전 커밋이 있을 경우 이전 커밋에 대한 정보도 함께 가지고 있다.

다음 초록색 동그라미는 각각 하나의 커밋객체이다. 게임상 한개의 라운드라고 생각해보자. 그리고 master 라는 플레이어가 있다.


master 플레이어가 현재 3라운드까지 진행한상태이다. (3번의 commit)





그리고 여기서 develop 이라는 플레이어가 들어온다. (develop 브랜치 생성)





이 게임은 자신의 순서에만 행동을 할 수 있다. 현재 턴에 행동가능한 플레이어가 누구인지에 대해 HEAD 라고 표시된다.





develop 플레이어가 자신의 턴에 필요한 행동을 하고 턴을 종료(commit) 한다.





master 플레이어에게 행동권을 넘긴다. (checkout master)




Posted by KENSIN
,