반응형 프로그래밍193 [Jenkins] Shell script 오류나도 계속 진행하는 방법 2가지 경우가 있는데 1. Jenkins에서 Script 에러 발생 시에도 진행하는 방법 2. SCM, 즉 Jenkins에서 .sh파일을 실행하는데 파일 안에 명령어가 여러 개 일 때 오류가 나도 진행하는 방법이다. 1번의 경우아래의 블로그를 확인 https://jojoldu.tistory.com/409 2번의 경우에는 아래 코드를 확인 (feature/A로 checkout을 하는데 오류가 난다고 하였을 때 가정이다) git checkout feature/A || true # or git checkout feature/A || exit [number] 그냥 git checkout feature/A를 수행하면 오류를 뱉고 Jenkins 수행결과도 Fail이다. git checkout feature/A ||.. 프로그래밍/Jenkins 2023. 6. 24. [Linux] 프로그램 없이 Serial 통신하기 연결된 시리얼 확인 ls /dev/ttyUSB* 내가 연결한 시리얼 확인 아래 명령어 입력 후 최근 내역에 연결 로그를 보고 판단 dmesg | grep tty 접근권한 부여&재부팅 sudo usermod -a -G dialout $USER 읽기 cat /dev/ttyUSB0 쓰기 echo "쓸 데이터" > /dev/ttyUSB0 만약 GUI 환경에 프로그램으로 간편하게 하고싶다면 putty를 추천 sudo 권한으로 실행 필요 sudo apt-get install putty sudo putty 프로그래밍/Linux 2023. 6. 24. [Jenkins] Git fatal: could not read Username 오류 해결 git push를 하는데 오류가 발생, 검색했더니 워낙 정보가 없어서 헤매었다. 여기서 나오는 could not read Username오류에서 Username을 인식 못하는 건가 싶어 Username을 바꿔도 보고, git config --list도 확인하고, Credentials도 추가해 보고 별짓을 다했으나 해결되지 않았는데, 문득 jenkins로 로그인해서 직접 해보자는 생각이 들었다. 먼저 jenkins 유저 로그인해야 하는데 su로 로그인하여 아래 명령어를 입력하여 user home으로 이동한다. su -s /bin/bash jenkins cd ~/ pwd git push를 해보기 전에, 먼저 수행한 것은 .ssh 추가이다. jenkins도 서버의 한 유저이기 때문에 .ssh 키등록을 해주어야.. 프로그래밍/Jenkins 2023. 6. 7. [Git] 4. branch(2) 원격 저장소 브랜치 확인 git remote show [저장소] 로컬 브랜치 원격 저장소 업로드 git push -u [저장소 이름] [브랜치 이름] 브랜치 이름바꿔 업로드 git push -u [저장소 이름] [로컬 브랜치 이름]:[원격 브랜치 이름] 업스트림 생성 git checkout --track [저장소 이름]/[브랜치 이름] 원격 브랜치 동기화 git checkout -b [(로컬) 새 브랜치 이름] [저장소 이름]/[브랜치 이름] 업스트림 설정 (원격 저장소만 연결되고 업스트림이 설정되어 있지 않을 때) git push --set-upstream [저장소 이름] [브랜치 이름] 현재 브랜치 업스트림 추적 (기존 브랜치를 특정 원격 브랜치로 추적) git branch -u [저장소 이름]/[브.. 프로그래밍/Git 2023. 6. 5. [C,C++,C#] 구조체 padding 제거(feat. 구조체 크기 계산) 이전 글에서 구조체의 크기가 멤버 변수보다 크게 잡히는 현상을 확인했다. 2023.06.04 - [프로그래밍/C,C++,C#] - [C,C++,C#] 구조체 메모리 크기 계산 [C,C++,C#] 구조체 메모리 크기 계산 C언어를 하면 구조체를 초반부에 배우는데, 좀 더 깊게 들어가 본다. 아래 코드의 결과는? #include struct Temp{ double a; int b; char c; }; int main() { struct Temp temp; printf("struct size = %ld\n", sizeof(temp)); return 0; } park-duck.tistory.com 해결방법은 크기가 작은 멤버변수 순서로 선언하는 것이었는데, 그렇다고 char, double 순서로 놓는다고 해서 .. 프로그래밍/C,C++,C# 2023. 6. 4. [C,C++,C#] 구조체 메모리 크기 계산 C언어를 하면 구조체를 초반부에 배우는데, 좀 더 깊게 들어가 본다. 아래 코드의 결과는? #include struct Temp{ double a; int b; char c; }; int main() { struct Temp temp; printf("struct size = %ld\n", sizeof(temp)); return 0; } 결과는 16이다. 8(double) + 1(char) + 4(int) = 13으로 계산하였다면 잘못 알고 있는 것이다. 8로 기준을 잡고 순서대로 생성과정을 설명하자면, 1. double이 들어왔으니 8byte를 생성+8byte 할당 (구조체 총 크기: 8, 남은 공간: 0/8) 2. int가 들어왔으니 8byte를 생성+4byte 할당 (구조체 총 크기: 16, 남은 공.. 프로그래밍/C,C++,C# 2023. 6. 4. [C,C++,C#] 전처리 ##연산자 C계열에 ##연산자가 있다. ##의 의미는 "이어준다"라는 의미이다. 전처리이기 때문에 치환을 하고 컴파일을 하기 때문에 가능하다. 아래는 예제코드와 결과이다. 배열을 써서 for문을 사용하여 초기화하여도 되나, 배열을 사용하면 안 될 때가 있을 시(있는진 모르겠지만) 이런 방식도 있다. #define MAKE_VAR(n) int var_##n = 100+n; #define VAR_PRINT(n) printf("%d\n",var_##n); #include int main() { for(int i=0;i 프로그래밍/C,C++,C# 2023. 6. 4. [Git] 3. branch(1) 브랜치 목록 git branch (feature/master와 같이 애매모호한 이름으로 정하지 말자) 브랜치 세부 목록 git branch -v 브랜치 생성 git branch [브랜치 이름] 브랜치 이동 git checkout [branch 이름] 브랜치 생성&이동 git checkout -b [branch 이름] 브랜치 해시값(SHA1) 출력 git rev-parse [brnach 이름] 이전 브랜치 되돌리기 git checkout - 브랜치 특정 commit으로 이동 git checkout [commit hash] 브랜치 직전(상대 위치) commit 이동 git checkout HEAD~1 # 2개 이전은 HEAD~2 식으로 숫자만 바꾸면 됨 프로그래밍/Git 2023. 5. 31. [Jenkins] Git 변경 적용되지 않는 오류 해결 Jenkins를 사용하다 git checkout -b 인데, git branch -b로 오타가 나서 Git을 다시 push한 후 Jenkins를 돌렸으나 여전히 오류가 나는 상황. + git branch -b feature/feature error: unknown switch `b' Git을 확인해도, Jenkins의 git checkout을 확인해도 아무런 문제가 없었는데, Jenkins workspace를 확인해보니 수정전으로 남겨져있었다. Jenkins에서 Cache와 같은 개념이 있다고 한다. 그래서 수정이안된건데, Workspace를 삭제하는 방법이 있다. (rm -rf 명령어로 수행하기엔, 실수로 인해 애꿎은 파일만 날릴 수도있다.) 빌드환경에서 "Delete workspace before b.. 프로그래밍/Jenkins 2023. 5. 29. [Git] 계정 자동 로그인(feat. VSCode) vscode에서 push, pull, remote 등 명령어를 입력하면 Git 계정과 비밀번호를 묻는데, 계속 물어서 귀찮을 때가 많다. 아래 명령어는 로그인 정보를 요구할 때 한 번 입력하게 되면 그 정보를 저장하고 이후로는 로그인 정보를 묻지 않고 자동으로 인증한다. (해당 repository만 적용하고자하면 global옵션을 제외하자) git config --global credential.helper store # 또는 로그인 정보를 시간단위로 저장 # git config --global credential.helper 'cache --timeout 600' 아래 명렁어로 설정이 되어있는지 확인할 수 있다. git config --list 프로그래밍/Git 2023. 5. 29. [Git] 2. Commit (feat. log, diff) git commit --help git commit --help git stage area -> commit (commit시 -m은 --message의 약자 필수 옵션) git add . git commit -m "[메시지(로그)]" git add & git commit 동시에 git commit -am "[메시지(로그)]" 메시지가 없는 commit git commit --allow-empty-message -am "[메시지(로그)]" 수정 이력 없이 commit (push를 하고 싶으면 강제 푸시를 해야 하니 git pull 또는 이력을 보고 또 보고 push 할 것) git commit --ammand --no-edit git push -f git commit 기록 출력(시간 내림차순) git lo.. 프로그래밍/Git 2023. 5. 27. [Linux]Ubuntu WIFI or 랜카드 인식에러(feat. Kernel update) 어떤 상황에 이 글을 봐야 하냐면, 1. 노트북을 구매하여 Ubuntu를 설치하였는데 WIFI가 인식 안된다 2. 노트북을 구매했는데 LAN포트가 없다. 3. 결론적으로 인터넷을 사용하지 못하고 있다. 4. WIFI 뿐만 아니라 HDMI, 터치패드, 블루투스 등이 인식이 안될 경우 +) OS 설치 시에 네트워크 연결을 묻지 않는다. -> 애초에 랜카드를 인식하지 못해서 안 묻는 거다. 문제야 여러 가지일 수 있지만, 보통 위 상황이면 Network Driver랑 Kernel의 버전이 안 맞는 것이다. 즉 최신 노트북을 샀는데 Ubuntu 20.04, Ubuntu 18.04 버전을 설치했을 경우이다. 터미널에서 아래의 명령어를 입력해 보자. (상황에 따라 sudo 추가) ls /lib/firmware 만약.. 프로그래밍/Linux 2023. 5. 25. 이전 1 2 3 4 5 6 7 ··· 17 다음 반응형