리눅스 14

[git] git add -p를 사용해 원하는 부분만 커밋하기

소스 코드 수정 중에는 다양한 변경 사항(버그 수정, 기능 추가, 코드 정리 등)이 한 파일에 섞여 들어갈 때가 많습니다. 이럴 때 git add -p 명령을 사용하면 파일의 특정 부분만 선택적으로 스테이지에 올려 커밋할 수 있습니다. git add -p 명령어 실행git add -p 또는 git add --patch 명령을 실행하면 다음과 같은 질문이 나타납니다:Stage this hunk [y,n,q,a,d,/,j,J,g,e,?]? 여기서 각 옵션이 하는 역할을 간단히 정리했습니다:y (yes): 현재 보이는 코드 덩어리(chunk)를 스테이지에 추가합니다.n (no): 현재 덩어리를 스테이지에 추가하지 않습니다.q (quit): 작업을 종료합니다. 종료하더라도 y로 추가한 내용은 스테이지에 남아 있..

IT/VCS 2014.09.11

[git]실수로 지운 커밋(commit) 살리기

기록용으로 남겨둡니다. 참고 사이트에 자세히 나와 있으므로 꼭 참고하시기 바랍니다. 0. 현재 저장소가 지저분(?)하지 않아야 합니다. git status 명령으로 확인해봅니다. git status nothing to commit, working directory clean 이런 결과이면 다음으로 넘어가면 되지만 아직 수정 중인게 있는데 어쩌란 말야 하는 상황이라면 깔끔하게 임시 보관함(stash)에다 저장해줍니다. git stash save "imsi" Saved working directory and index state On master: imsi HEAD is now at a104848 [printf-define] Add simple example imsi 내용으로 자세한(!) 설명을 남기고 저장..

IT/VCS 2014.09.02

[GDB] handle 명령

gdb 프로세스에 발생되는 신호(signal)를 다루기 위한 기능입니다.handle 신호 동작명령 형태는 위와 같습니다. 예를 들면 SIGUSR1 신호가 발생하면 기본 동작으로 멈추는데 멈추지 않고 계속 진행하게 하려면 다음과 같이 입력합니다.handle SIGUSR1 nostop동작에는 stop, nostop, print, noprint, pass, nopass, ignore, noignore가 올 수 있습니다.크게 stop, print, pass, ignore입니다.stop은 해당 신호를 받았을 때 프로그램 진행을 멈추고 디버거인 gdb 프롬프트로 돌아올 것인지를 지정합니다.print는 해당 신호가 발생했음을 간단히 출력해줍니다.pass는 해당 신호를 프로그램에 전달할지를 지정합니다.ignore는 해..

IT/gcc 2014.08.13

리눅스 서버 시간 수동 설정

서버가 외부 시간 서버를 사용할 수 없어서 동기화가 안되는 경우, 시간을 수동으로 설정하려면 date 명령을 사용하면 됩니다. clock 명령도 있다고 하는데 내가 설정하는 서버에는 설치되어 있지 않아서 패스.. date 월일시분년.초 예를 들면 date 021011282014.33으로 하면 오늘 날짜(2014.02.10 11:28)의 33초 시간으로 시간을 변경하게 됩니다.자세한 옵션은 아래의 man date 를 참조하면 되는데 솔직히 스크립트로 자동화하는 경우를 제외하곤 위의 사용법만 알아도 될 듯 하네요.DATE(1) User Commands DATE(1) NAME date - print or set the system date and time SYNOPSIS date [OPTION]... [+FO..

IT/server 2014.02.10