pooney
article thumbnail
<GIT> git pull의 merge history는 ?
GIT 2024. 3. 20. 22:47

안녕하세요 오늘은 git에서 pull을 하면 merge hitsory는 어떻게 되는지 알아보려고 합니다. 일반적으로 프로젝트를 진행하면서 git에서 가장 많이 사용 하는게 pull 아닐까 싶은데요. 주기적으로 pull을 하면서 충돌의 위험성을 감소 할 수 있는 강력한 기능입니다. 여기서 git pull에 대해서 모르시는 분들이 있으 실 수 있으니 간단히 설명자면 fetch + merge 라고 생각하시면 됩니다. PULL = Fetch + Merge 즉, Fetch를 통해 원격 저장소에서 최신 커밋 이력을 가지고오고 Merge를 통해 현재 브랜치에 병합을 해준다. 라고 볼 수 있습니다. 그러면 여기서 생각이 드는 것은 Merge 이력은 무조건 만들어 지겠지? 라는 것입니다. 물론 옵션에 따라 다르겠지만 대..

[프로그래머스] 문자열 내 마음대로 정렬하기
카테고리 없음 2023. 12. 17. 22:41

import java.util.*; class Solution { public String[] solution(String[] strings, int n) { Comparator stringComparator = Comparator.comparing(a -> a.charAt(n)); return Arrays.stream(strings) .sorted(stringComparator.thenComparing(Comparator.naturalOrder())) .toArray(String[]::new); } } https://school.programmers.co.kr/learn/courses/30/lessons/12915

article thumbnail
[Jenkins] Jenkins Branch별 Webhook 설정
DevOps 2023. 9. 5. 22:05

프로젝트를 진행하면서 수많은 개발서버와 수많은 브랜치가 생성이 되는데요. 저같은 경우 개발서버에 맞는 브랜치를 만들고 해당 브랜치를 Jenkins를 통해 빌드 배포하는 방식으로 많이 이루어 졌습니다. 하지만 개발서버가 많아 질 수 록 Merge하고 젠킨스를 통해 수동 배포하는 상황이 많아지면서 불필요한 동작과 시간이 소비가 많아졌습니다. 간략한 구조는 아래와 같은 구조가 될 거 같습니다. 하지만 대부분 별다른 설정없이 사용을 하면 젠킨스 Branch별 Job을 생성해서 Webhook설정하는 구조로 아래와 이미지 같이 많이 사용 하 실 겁니다. 물론 브랜치가 몇개 안되면 상관 없겠지만 점차 Branch의 숫자가 늘어나면 해당 Job의 개수도 많이 늘어나야 할 것입니다. Job 하나로 구성하고 Merger ..

article thumbnail
Spring Batch - Rest API JOB 구성
Spring boot/spring-batch 2023. 8. 27. 18:32

프로젝트를 진행하면서 Batch를 구성해야하는 경우가 많은데요. 대부분 Job을 구성 할때 DB를 조회하는 JdbcItemReader, Jdbccursoritemreader, Jdbcpagingitemreader등을 이용해서 만드는 경우가 많았습니다. 간혹 저의 경우 외부 Data를 받기 위해 API를 호출하고 받은 Response Data를 저희 DB에 넣어서 동기화하는 Job을 구성해야 하는 경우가 있었는데요. 대부분은 DB에서 read해서 Db에 write를 하는 글은 많이 보이지만 외부 연동이 들어가는 Job은 어떻게 구성을 해야하는지 잘 보이지 않아 공부 할 겸 글로 작성해보려고 합니다. 틀린 부분 이 있을 수 있으니 감안해주시면 감사하겠습니다. 요구조건 외부 Rest API를 통해 데이터를 받..

[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기
카테고리 없음 2023. 6. 4. 23:49

SELECT UGB.TITLE, UGB.BOARD_ID, UGR.REPLY_ID, UGR.WRITER_ID, UGR.CONTENTS, DATE_FORMAT(UGR.CREATED_DATE, '%Y-%m-%d') as CREATED_DATE FROM USED_GOODS_BOARD UGB INNER JOIN USED_GOODS_REPLY UGR ON UGB.BOARD_ID = UGR.BOARD_ID WHERE DATE_FORMAT(UGB.CREATED_DATE ,'%Y-%m') = '2022-10' ORDER BY UGR.CREATED_DATE ASC , TITLE ASC https://school.programmers.co.kr/learn/courses/30/lessons/164673 프로그래머스 코드 중심..

[프로그래머스] 추억점수
알고리즘 2023. 6. 4. 23:38

public int[] solution(String[] name, int[] yearning, String[][] photo) { int [] answer = new int[photo.length]; Map nameMap = new HashMap(); for(int i=0; i

[프로그래머스] 달리기 경주
알고리즘 2023. 5. 31. 22:55

처음 Map을 사용하지 않고 for문으로 해결한 경우 최악의 수가 나와 시간에러가 발생하였다 이후 시간 문제를 해결 하기 위해 Map을 사용하는 것으로 해결하였다. import java.util.*; class Solution { public String[] solution(String[] players, String[] callings) { Map idxMap = new HashMap(); for(int i=0; i

[프로그래머스] 그룹별 조건에 맞는 식당 목록 출력하기
알고리즘 2023. 5. 29. 01:03

해결답) 동률 리뷰수에 대한 정의가 정의가 되어 있지 않아 LIMIT1로 해결함. SELECT MM.MEMBER_NAME , R.REVIEW_TEXT, DATE_FORMAT(R.REVIEW_DATE, '%Y-%m-%d') FROM REST_REVIEW R INNER JOIN MEMBER_PROFILE MM ON R.MEMBER_ID = MM.MEMBER_ID INNER JOIN ( SELECT COUNT(*) AS CNT , MP.MEMBER_ID from MEMBER_PROFILE MP INNER JOIN REST_REVIEW RR ON MP.MEMBER_ID = RR.MEMBER_ID GROUP BY MEMBER_ID ORDER BY CNT DESC LIMIT 1) A ON R.MEMBER_ID = ..