탁구치는 개발자
close
프로필 배경
프로필 로고

탁구치는 개발자

  • 분류 전체보기 (420) N
    • WebRTC (7)
    • 프로그래밍 (139)
    • AI 활용 (3)
    • 서버 (49)
    • 개발툴 (102)
    • 개발이야기 (10)
    • 장애 경험 (1)
    • 유용한 도구 (4)
    • 끄적끄적 (17)
    • 독서 (86) N
    • 회고 (1)
    • 재테크 (1)
  • 홈
  • 태그
  • 미디어로그
  • 위치로그
  • 방명록
SourceTree Commit mode default 설정 변경

SourceTree Commit mode default 설정 변경

SourceTree를 사용하면서 local repository에 commit을 할 때 항상 Staged 영역에 변경된 소스를 추가한 후 commit을 해주곤 했다.헌데, 이런 반복적인 작업이 여간 귀찮은게 아니다. 이때 사용할 수 있는 방법이 Commit mode를 Seleted files로 변경하여 바로 commit을 날리는 것이다. 헌데, 매번 commit mode를 Seleted files로 변경해 주는 것 또한 귀찮다.default 설정을 바꾸는 곳이 분명 있을 거라 생각되어 찾아보니 역시나 존재했다.Tools > Options > Git 탭 이동"Use the staging area" 체크 박스 해제

  • format_list_bulleted 개발툴
  • · 2014. 2. 15.
  • textsms

Git Fetch와 Merge 비교

Git을 이용하여 개발을 하였을 경우 원격 저장소의 소스를 내 로컬 저장소에 merge하기 위해서는 pull을 받게 된다.pull을 하게 되면 원격 저장소의 소스를 로컬 저장소로 가져온 후, Merge 작업을 자동으로 수행한다.여기서 원격 저장소의 소스를 로컬 저장소로 가져오는 작업을 Fetch라고 한다.즉, pull을 하게 되면 fetch를 한 후 merge 작업까지 자동으로 실행해 주는 것이다. 그럼 pull을 받았을 때 충돌이 발생하면 어떻게 해야 하는 걸까?이런 경우는 우선 fetch를 받은 후 개발자가 수동으로 merge 작업을 진행해 줘야 한다. 이클립스 EGit을 사용할 때 한 가지 알아야 할 것이 있는데 Egit 플러그인에서는 synchronize workspace 실행 전 fetch를 자..

  • format_list_bulleted 개발툴
  • · 2014. 1. 29.
  • textsms
Jenkins 에서 shell로 tomcat startup 시 동작하지 않는 문제

Jenkins 에서 shell로 tomcat startup 시 동작하지 않는 문제

젠킨스에서 프로젝트 빌드 후 Post Steps의 Execute shell에 배포 스크립트를 등록하여 사용하고자 하였다. shell 스크립트가 하는 일은 대략 다음과 같다.1. tomcat process를 kill2. 빌드된 war 파일을 톰켓의 컨텍스트 패스 디렉토리에 풀어줌3. tomcat start 헌데 tomcat start가 되질 않는다. 해당 원인은 jenkins에서 job 빌드 수행이 완료되면 child process를 모두 kill하기 때문이라고 한다. 해결 방법 URLstackoverflow URL 다음과 같이 BUILD_ID=dontKillMe "shell 스크립트 경로" 를 추가하여 문제를 해결하였다.ps -ef | grep mySpringProject | grep -v grep | ..

  • format_list_bulleted 개발툴
  • · 2014. 1. 26.
  • textsms
eclipse EGit 시나리오별 사용법

eclipse EGit 시나리오별 사용법

git에 대한 개념적인 설명보다는 실무에서 무리 없이 사용할 수 있는 범위로 상황별 시나리오를 작성한다.각각의 시나리오는 A, B 개발자가 Git을 함께 쓰는 것을 예로 든다. 1. 개발자A 새로운 파일 생성 후 로컬 리포지토리에 commit이클립스에서 newFile1.txt 파일을 새로 생성하게 되면 해당 파일은 Untracked file의 상태를 가진다.Untracked file의 의미는 Git에서 관리대상에 포함되지 않는 다는 의미이다.이제 파일을 로컬 리포지토리에 commit해보자.프로젝트를 클릭 한 후 team > Synchronize 를 실행하면 newFile1.txt 파일이 목록에 보이게 된다.이제 해당 파일 commit을 해보려고 하면 commit을 할 수 없다. 커밋 버튼이 비활성화 되어..

  • format_list_bulleted 개발툴
  • · 2014. 1. 18.
  • textsms
Git Configuration 프로젝트별 사용자 정보 셋팅

Git Configuration 프로젝트별 사용자 정보 셋팅

분산버전관리 시스템인 Git을 사용하여 commit을 하게 되면 Configuration에 설정한 user.email 값과 user.name 값이 커밋된 snapshopt 정보에 기록된다. 만약 두 개의 프로젝트를 동시에 진행하고 있고, git 저장소가 다른 상황에서 user.email, user.name 정보를 다르게 하여 commit하기 위해서는 어떻게 해야 할까? 방법은 이클립스의 Team > Git > Configuration 에서 콘트롤 할 수 있다. mavenMultiModule 프로젝트에서 사용하는 email, name은 다음과 같이 Repository Settings 탭으로 이동 후 user.email, user.name 을 등록해준다. 이와 같이 셋팅을 하게 되면 mavenMultiMod..

  • format_list_bulleted 개발툴
  • · 2014. 1. 18.
  • textsms
Github Web Hook 설정

Github Web Hook 설정

jenkins를 사용하게 되면 대게 폴링을 이용하여 형상 관리 시스템의 리비전이 변경되었는지를 체크한다.만약 변경이 되어 있으면 빌드가 실행되고, 변경이 없다면 빌드가 실행되지 않는다.허나 이 방법은 매번 jenkins 시스템이 형상관리 시스템으로 불필요한 요청을 보내게 되는데 이런 문제를 해결할 수 있는 기술이 hook이다. hook의 동작 방식은 개발자가 github에 소스 코드를 push하면 github 시스템이 jenkins 시스템으로 noti를 보내게 되는 방식이며 이를 받은 jenkins 시스템은 빌드를 시작하게 된다. 다음은 설정 방법이다.1. GitHub plugin 플러그인 설치 2. Jenkins > configuration > GitHub Web Hook 이동 - Let Jenkins..

  • format_list_bulleted 개발툴
  • · 2014. 1. 15.
  • textsms
Jenkins + Atlassian Stash(Git) 연동

Jenkins + Atlassian Stash(Git) 연동

사내에서 Git을 사용하게 되어 개발 장비에 Jenkins와 Git 연동을 준비하였는데 진행 과정에서 다소 삽질이 많았던 터라 정리한다. plugin 설치Jenkins 관리 > 플러그인 관리 페이지 이동 후 Jenkins GIT plugin을 설치한다.해당 플러그인을 설치하게 되면 dependency plugin 들이 자동으로 설치가 되는데 그 대상이 되는 것은 Jenkins GIT client plugin, SCM API Plugin 이다. 시스템 설정Jenkins 관리 > 시스템 설정 관리 페이지 이동 후 JDK, Maven 등을 셋팅한다.이후, Git 정보란을 유심히 살펴봐야 하는데 Path to Git executable 항목의 git은 실행 파일명을 의미하는 것이다. 즉 서버에 git이 inst..

  • format_list_bulleted 개발툴
  • · 2014. 1. 15.
  • textsms
maven debug 모드로 goal 실행

maven debug 모드로 goal 실행

maven package task 실행 시 다음과 같이 INFO 로그와 WARNING 로그가 기록된다.[INFO] ------------------------------------------------------------------------[INFO] Building mySpringProject 1.0.0-BUILD-SNAPSHOT[INFO] ------------------------------------------------------------------------[INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ mySpringProject ---[INFO] Using 'UTF-8' encoding to co..

  • format_list_bulleted 개발툴
  • · 2014. 1. 14.
  • textsms
Git 원격 저장소 maven multi module 프로젝트 가져오기

Git 원격 저장소 maven multi module 프로젝트 가져오기

Git 원격 저장소의 프로젝트를 로컬로 clone 하고, 메이븐 멀티 모듈 프로젝트를 로컬 이클립스에 셋팅하는 방법에 대해서 정리해 본다. Git 원격 저장소 이클립스 workspace로 가져오기 설정1. 이클립스의 Git Repositories 뷰에서 git 저장소 추가 아이콘 클릭 - Clone a Git Repository and add the clone to this view 2. Clone Git Repository 창에 원격 저장소의 URI와 User, Password를 채워 넣은 후 Next 3. master branch 선택 후 Next - 내 프로젝트에는 develop branch도 있기 때문에 함께 체크 했음 4. Local Destination 디렉토리 선택 후 Finish - 작업 ..

  • format_list_bulleted 개발툴
  • · 2014. 1. 10.
  • textsms
eclipse svn client (Subversive) 에서 svn 아이콘이 안 보이는 현상

eclipse svn client (Subversive) 에서 svn 아이콘이 안 보이는 현상

이클립스 workspace에 생성되어 있는 프로젝트를 SVN 형상관리 시스템과 연결을 완료하였는데도 아래와 같이 SVN 관련 icon들이 표시되지 않는 문제가 있었다. 원인을 찾아 보니 아래 설정으로 들어간 후 "SVN" 에 체크해 주면 정상적으로 icon들이 표시된다.Window > Preferences > General > Appearance > Label Decorations 메뉴 이동 후 SVN 체크

  • format_list_bulleted 개발툴
  • · 2014. 1. 2.
  • textsms
maven packaging 시 test 제외 방법

maven packaging 시 test 제외 방법

메이븐 빌드 시 test 코드의 수행 시간이 오래 걸려 제외 하는 방법을 찾아 보았다.방법은 다음과 같이 옵션을 추가하면 된다.-Dmaven.test.skip=true

  • format_list_bulleted 개발툴
  • · 2013. 12. 31.
  • textsms
Nexus에 jar파일 올리기

Nexus에 jar파일 올리기

maven 중앙 repository에 jar 파일이 없는 경우 사설 repository에서 다운로드를 제공하려면 해당 jar 파일을 업로드 해야 하는데 업로드 방법을 매번 잊어 먹어 이곳에 정리한다. 순서는 다음과 같이 진행한다. 4번 진행 시 Group 필드에 "fakepath"로 셋팅이 되니 해당 jar 파일의 패키지 경로를 알맞게 넣어주도록 하자. (브라우저에서 보안상의 이유로 중간 path를 fakepath로 바꿈)

  • format_list_bulleted 개발툴
  • · 2013. 12. 3.
  • textsms
누가 Javadoc을 안 달았는지 확인하는 방법 (JAutodoc)

누가 Javadoc을 안 달았는지 확인하는 방법 (JAutodoc)

개발을 진행하다 보면 필드나 메서드에 주석을 추가하지 않는 개발자가 종종있다.이런 것들을 일일이 소스를 열어보며 확인하는 방법보다 자동화 툴을 이용하여 한번에 찾아내는 편이 훠얼씬 효율적일 것이다.이클립스 플러그인 JAutodoc이 이를 해결해 준다. 플러그인은 Marketplace에서 JAutodoc으로 검색하여 설치하면 되고, 위의 검색 창은 ctrl + h를 눌러 확인하면 된다.참고로 JAutodoc은 한방에 Javadoc을 달아줄 때 사용하면 좋다. 물론 주석의 내용을 채우는 것은 개발자 몫

  • format_list_bulleted 개발툴
  • · 2013. 10. 17.
  • textsms
이클립스 find/Replace 정규표현식

이클립스 find/Replace 정규표현식

find/Replace 창에서 Reqular expressions를 이용하여 일괄적으로 문자열 변경을 시도해 보았다.다음 원본 쿼리의 FROM절 다음에 오는 테이블 명 앞 뒤로 back quote(`)를 추가해 주는 것이다. 원본 쿼리SELECT testInventoryIdFROM db.TestInventories DI SELECT idFROM db.Inventories DI 변경 쿼리SELECT testInventoryIdFROM `db.TestInventories` DI SELECT idFROM `db.Inventories` DI 문자열 패턴 검색을 위해서 다음과 같은 정규표현식을 사용했다.(db.[a-zA-Z]+)위의 정규표현식을 풀이하면 db. : db. 의 문자열 탐색[a-zA-Z]+ : 알파벳..

  • format_list_bulleted 개발툴
  • · 2013. 9. 5.
  • textsms
이클립스 Console 뷰 두 개 띄운 후 프로세스별 로그 구분

이클립스 Console 뷰 두 개 띄운 후 프로세스별 로그 구분

하나의 이클립스에서 두 개의 WAS를 구동시킨 후 테스트를 하는 경우가 있다.이와 같이 두 개의 프로세스를 구동하게 되면 하나의 Console 뷰를 공유하며 로그가 찍히게 되는데 로그 확인이 여간 불편한게 아니다.그래서 두 개의 Console 창을 띄우고, 로그를 구분할 수 있는 방법을 알아본다. 먼저 새로운 Console 뷰를 띄우기 위해서는 Console 뷰 오른쪽 끝에 있는 삼각형을 누른 후 메뉴를 확장하여 "New Console View"를 클릭하자. 그러면 새로운 Console View가 뜬다. 여기까지 한 후 2개의 서비스를 테스트 해보면 두 개의 Console 창이 서로 같은 로그를 찍는 것을 확인할 수 있다. 즉, A라는 서비스에서 System.out.println("hello A serv..

  • format_list_bulleted 개발툴
  • · 2013. 9. 4.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • navigate_next
전체 방문자
오늘
어제
전체
전체 카테고리
  • 분류 전체보기 (420) N
    • WebRTC (7)
    • 프로그래밍 (139)
    • AI 활용 (3)
    • 서버 (49)
    • 개발툴 (102)
    • 개발이야기 (10)
    • 장애 경험 (1)
    • 유용한 도구 (4)
    • 끄적끄적 (17)
    • 독서 (86) N
    • 회고 (1)
    • 재테크 (1)
최근 글
최근 댓글

캘린더

«   2025/07   »
일 월 화 수 목 금 토
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
태그
  • #algorithm
  • #Database
  • #Spring
  • #개발주의사항
  • #vagrant
  • #maven
  • #VirtualBox
  • #tomcat
  • #git
  • #shellscript
  • #JUnit
  • #회고
  • #JPA
  • #HTTP
  • #Eclipse
  • #리눅스
  • #fiddler
  • #제너릭
  • #JQuery
  • #javascript
  • #ant
  • #Apache
  • #SQL
  • #Wireshark
  • #Elasticsearch
  • #Jenkins
  • #Docker
  • #Kubernetes
  • #java
  • #SourceTree
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바