git config

개발/개발도구 2020. 3. 27. 14:39

config 목록

$git config --list

 

config 설정

$git config --global user.name "이름"

$git config --global user.email "xxx@xxx.com"

 

 

 

 

Posted by Lumasca
,

git checkout 할때 신규 브랜치인 경우 안되는 경우가 있다.

 

리모드 브랜치 최신정보로 업데이트한다.

$git remote update

'개발 > 개발도구' 카테고리의 다른 글

git config  (0) 2020.03.27
Jenkins 빌드후 이벤트 Publish over SSH 설정  (0) 2020.03.11
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git remove pushed file  (0) 2020.02.18
Git undo push  (0) 2020.02.17
Posted by Lumasca
,

Jenkin SSH 플러그인 설치

 

Manage Jenkins(Jenkins 관리) -> Plugin (플러그인 관리) 으로 이동한다.

 

 

플러그인 매니저에서 [설치 가능] 탭을 클릭한다.

[Publish ove SSH] 항목을 검색해서 찾아서 체크박스를 선택한다.

 

가장 아래로 이동해서 'install without restart' 버튼을 클릭하면 설치를 수행한다.


SSH Server 설정

Manage Jenkins(Jenkins 관리) -> System Configuration 으로 이동한다.

 


Publish ove SSH 항목을 찾는다.

SSH Servers 항목의 '추가' 버튼을 클릭한다.

서버 정보를 입력한다

 

-Name: 마음대로 설정한다. 프로젝트 빌드구성에서 사용할 이름이다.
-Hostname: SSH 서버 주소(URL)
-Username: 접속할 사용자 계정
-Remote Directory: 업로드할 경로. 계정 홈디렉터리로 설정한다. 톰캣 폴더는 권한이 없다. ex)/home/$계정/tomcat/

 

이제 서버 접근을 위한 정보를 입력해야 한다.

고급(Advanced) 버튼을 클릭한다.

Use password authentication, or use a diffrenct key 항목을 체크한다.

비밀번호를 사용한다면 Passphrase/Password에 위에 입력한 계정의 비밀번호를 입력한다.

 

Port: SSH 포트 번호를 입력한다. 기본은 22로 되어있다.
Test Configuration 버튼을 클릭해서 성공하는지 확인한다.

Save 버튼을 클릭한다.


프로젝트 빌드후 조치 추가


프로젝트의 Configuration(구성)으로 이동한다.


가장 아래로 이동해서 [빌드 후 조치 추가] 항목을 클릭하고 "Send build artifacts over SSH"를 선택한다.

SSH Publisher 구성 폼이다.


SSH Server: 2단계에서 설정한 SSH 서버 이름을 선택한다.

Source files: 배포할 산출물의 경로를 입력한다. ex)build/libs/*.war

Remove prefix: 소스 파일경로에서 폴더경로만 입력한다. ex)build/libs/
Remote directory: 2단계 설정한 remote directory 이하로 폴더를 생성할 경우만 입력한다. 생성안하면 그냥 공백으로.. ex)webapps
Exec command : 산출물을 업로드한 이후 서버에서 수행할 명령어를 입력한다. 서버의 경로이다.

ex) /home/$계정/tomcat/webapps/install-service.sh 명령은 스크립트 파일로 작성하고 파일경로를 입력한다.

 

서버의 install-service.sh 스크립트 예제: 단순히 war 파일을 톰켓 webapps로 옮기는 코드다.

sudo mv /home/$계정/tomcat/webapps/xxx.war $톰캣경로/webapps/xxx.war


3)Save(저장) 버튼을 클릭한다.

 

'개발 > 개발도구' 카테고리의 다른 글

git config  (0) 2020.03.27
git check error(git checkout did not match any file(s) known to git)  (0) 2020.03.27
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git remove pushed file  (0) 2020.02.18
Git undo push  (0) 2020.02.17
Posted by Lumasca
,

Jenkins 설치후 Plugin을 설치하려고 Plugin Manager로 가면 다음과 같은 오류가 발생할 수 있다.

 

There were errors checking the update sites: SSLHandshakeException: sun.security.validator.ValidatorException

 

Manage Jenkins -> Manage Plugin 으로 이동해서 Advanced 탭을 클릭한다.

 

그러면 다음 Update Site의 URL이 https로 되어 있을 것이다.

 

http로 변경하고 Submit 버튼을 클릭하자.

 
Posted by Lumasca
,

파일

$git rm --cache $filename

폴더

$git rm --cache -r $foldername

커밋

$git commit -m "Remove file"

푸시

$git push

'개발 > 개발도구' 카테고리의 다른 글

Jenkins 빌드후 이벤트 Publish over SSH 설정  (0) 2020.03.11
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git undo push  (0) 2020.02.17
Github & Jenkins 연동  (0) 2020.02.17
SQLiteSpy  (0) 2009.09.27
Posted by Lumasca
,

Git undo push

개발/개발도구 2020. 2. 17. 17:54

초기화

$git reset --hard $commit_version

 

강제 푸시

$git push -f origin master

 

 

'개발 > 개발도구' 카테고리의 다른 글

Jenkins 빌드후 이벤트 Publish over SSH 설정  (0) 2020.03.11
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git remove pushed file  (0) 2020.02.18
Github & Jenkins 연동  (0) 2020.02.17
SQLiteSpy  (0) 2009.09.27
Posted by Lumasca
,

 

1.Jenkins 설정

 

먼저 빌드할 프로젝트를 생성한다.

-설치후 생성한적이 없다면 아래 화면을 보게될 것이다. Create a job 을 클릭해서 진행한다.

-아니면 왼쪽 메뉴에서 New Item을 클릭한다.

 

 

프로젝트 이름을 입력하고 'Freestyle project'를 선택하고 OK를 클릭한다.

 

프로젝트가 생성되고 화면이 바뀐다.

GitHub project에 체크하고, Github의 레파지토리 URL주소를 입력한다. 

다음으로 Source Code 관리에서는 Git을 선택하고 Repository URL을 입력한다.

Git Clone할때 사용하는 .git으로 끝나는 주소이다.

다음은 Credentials 인데 Github repository에 접근하기 위해 Github 계정정보를 설정해줘야 한다.

위 화면에서 Add 버튼을 클릭하면 아래 다이얼로그가 팝업된다.

 

Username과 Password를 입력하고 Add 버튼을 클릭한다. 

그리고 none이 표시된 콤보박스를 클릭하면 추가한 계정정보가 보인다. 선택하도록 한다.

 

Branch 는 기본값이 master이다. 다른 branch를 사용하려면 수정한다.

Build Triggers 에서 [GitHub hook trigger for GITScm polling]을 체크한다.

이것이 Github에서 온 메세지를 수신하면 빌드를 수행하기 위한 것이다.

 

Build 는 Invoke Gradle을 선택하고 Gradle Version을 선택한면 된다. 

Tasks는 IDE에서 빌드할때 사용한 Task중에서 필요한 것만 추가하도록 한다. 

 

선택할 Gradle Version이 없으면 설정을 해야 한다. Jenkins 관리 >> Global Tool Configuration 항목을 클릭한다.

Tasks는 기본적으로 spring 프로젝트는 'clean build'를 안드로이드는 'clean assembleRelease' 로 입력하면 된다.

 

spring build task에서 테스트를 제외하려면 'clean build --exclude-task test' 로 작성한다.

 

디버깅을 위해 '--info', '--debug', '--stacktrace' 도 추가할 수 있다.

 

 

 

Global Tool Configuration 화면에서 중간에 보면 Gradle 항목이 있다. 

'Add Gradle' 버튼을 클릭하고 name을 입력하고, Install automatically에 체크한 뒤 저장한다.

여기 name에 저장한 이름이 위 Build 구성의 Gradle Version 항목에 추가된다. 

Save 버튼을 눌러서 저장한다.

 


Jenkins Server 공개키 준비하기

 

보통 공개키는 기존에 생성해 둔게 있을 것이다. 보통 홈디렉터리 .ssh폴더에 id_rsa.pub 라는 이름으로 생성되어 있다.

 

없으면 ssh-keygen으로 생성하면 된다. RSA알고리즘을 이용하며, 현재는 key size가 최소 2048bit이상, 4096bit를 추천한다.

생성하는 것은 간단하다. 다음 명령처럼 해주면 된다.

 

$ssh-keygen -t rsa -b 4096


2.GitHub webhook 설정하기

 

Jinkins 서버의 공개키를 Github에 등록해야 한다. 

한 프로젝트의 Deploy Keys에 등록하면 다른 프로젝트에 등록할때 이미 사용중이라고 오류가 나기때문에 Github 설정에서 등록하는 방법을 사용한다.

Github 메뉴(우측 상단에 계정아이콘 클릭하면 노출된다)에서 Settings를 클릭한다.

 

 

터미널에서 Jenkins 서버의 계정 홈디렉토리로 이동한다.

.ssh 폴더(숨김폴더)로 이동해서 id_rsa.pub 내용을 복사한다.

$cd .ssh

$cat id_rsa.pub 

위 명령을 실행하면 파일 내용이 출력된다.

ssh-rsa 로 시작하는데 전체 내용을 복사하도록 한다.

 

New SSH key를 클릭하면 값을 입력하는 창이 노출된다. 입력창에 위에서 복사한 공개키를 붙여넣는다.

 

이제 프로젝트의 Settings 탭으로 이동한 후, 왼쪽메뉴에서 webhooks을 클릭한다.

그리고 오른쪽의 Add webhook버튼을 클릭한다.

Payload URL은 https://$jenkins_URL/github-webhook 을 입력한다. github-webhook 문자열은 고정이다. 마지막에 '/'를 추가한다.

Content type은 "application/json"을 선택한다.

하단의 Add webhook 버튼을 클릭하여 저장한다.

 

모든 설정이 끝났다. Jenkins에서 프로젝트를 빌드를 한번 하도록 한다. 그래야 webhook이 동작한다.

 

이제 테스트를 해보자.

 

Github 의 Webhooks에 다시 진입한다.

Update webhook 버튼을 클릭하면 Jenkins로 webhook을 전달한다. 그러면 Jenkins에서 빌드를 수행할 것이다.

 

프로젝트 빌드후 조치 추가

lumasca.tistory.com/580

 

'개발 > 개발도구' 카테고리의 다른 글

Jenkins 빌드후 이벤트 Publish over SSH 설정  (0) 2020.03.11
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git remove pushed file  (0) 2020.02.18
Git undo push  (0) 2020.02.17
SQLiteSpy  (0) 2009.09.27
Posted by Lumasca
,

SQLiteSpy

개발/개발도구 2009. 9. 27. 08:51

Sqlite GUI 매니저이다. 
sqlite3 DB 파일을 읽어서 쉽게 관리할 수 있다.
쿼리 자동 생성기는 없고, 직접 작성해야한다.
APP에서 sqlite를 사용하고 있다면 필수 프로그램이다.

아래 사이트에서 다운받을 수 있다.
설치는 필요없고 실행시키기만 하면 된다.

URL : http://www.yunqa.de/delphi/doku.php/products/sqlitespy/index

'개발 > 개발도구' 카테고리의 다른 글

Jenkins 빌드후 이벤트 Publish over SSH 설정  (0) 2020.03.11
Jenkins Plugin Manager SSLHandshakeException  (0) 2020.03.10
Git remove pushed file  (0) 2020.02.18
Git undo push  (0) 2020.02.17
Github & Jenkins 연동  (0) 2020.02.17
Posted by Lumasca
,