inflearn logo
강의

講義

知識共有

ジェミニの開発実務 - コマースバックエンドレガシーとAI活用編

商品一覧 - コードを感じる

AI 를 적용시 브랜치를 다루는 팁 같은게 있을까요?

解決済みの質問

112

CodingSoon

投稿した質問数 5

1

AI로 코드를 분석해보거나
레거시의 수정 포인트를 느껴보거나 하는 부분은
많이 와닿았는데요.

AI 가 코드를 수정한 이후에
코드를 비교해보는 영역에서 브랜치를 어떻게 관리하는게 좋을 지 의문이 들었습니다.

AI 가 다수의 코드를 변경하고 있는데, 실제 실무에서는 한 꺼번 에 코드를 바꿔버리면 diff가 너무 많아서 개발시 우려되는 부분이 많이 생깁니다.

gpt에 물어보면 ai/product-draft 와 같이 실험용 브랜치에서 작업 이후에 선별하여 수정하라는 답변을 받았는데요.

아직 섹션3을 수강하고 있어서, 이른 질문일지 모르지만
해당 사항 관련하여 실무적인 관점에서 실제로 어떻게 하는게 좋은 방법일 지 조언 한 번 부탁드립니다.

spring-boot 도메인 dbms/rdbms backend ai-활용-(ax) 지금-베스트

回答 2

0

geminikims

안녕하세요 질문 감사드립니다!

오...! 사실 이 부분은 이번 강의에서 직접적으로 언급하지는 않습니다만! 중요한 부분 같습니다! (저도 계속 실험하면서 고민하고 있는 부분이고요)

 

이것 관련해서는 여러 전략을 사용하는 것 같은데요

기본적으로는 AI에게 요청한 Task별로 브랜치를 분리 하는게 아직은 좋다고 생각합니다

가령 동시적으로 작업을 시킬때 main 브랜치 그 자체에 모두 작업을 한다면 생각보다 작업 사항이 제대로 이행됬는지 스르륵 (또는 꼼꼼히) 리뷰하기가 힘들어집니다

그래서 AI에게 요청할 작업 단위를 적절히 나눴고 병렬 적으로 Task를 돌린다면 자연스럽게 브랜치를 나누는게 맞다 생각하는 것 같습니다

 

+아예 같은 repo를 local에 n개 clone 받아서 병렬로 돌리시는 분들도 있다고 합니다
(다만 이제 AI Agent들이 worktree 자체를 너무 잘 활용해서 이럴 필요도 없다고 하시는 분들도 있구요ㅎㅎ, 저도 몇번 테스트 해봤는데 정신 없기도하고 괜찮기도 했습니다)

 

++ 이런 전략 또한 사실 매일 바뀌는 것 같습니다, 트렌드가 너무 빠르게 변화고 진화하고 있어서 잠깐 놓치면 다른 전략이 대세더라구요ㅎㅎ.. 최근에 본 어떤 분 의견은 브랜치 분리 자체가 필요 없다 라고 말하신 분들도 있었습니다ㅎㅎ;;


모쪼록 답이 되었길 바랍니다! 감사합니다!

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다. CodingSoon님.

AI를 적용하여 코드를 수정할 때, 특히 대규모 코드 변경이 이루어질 경우 브랜치 관리와 관련된 고민을 하는 것은 매우 중요한 사항입니다. 이런 상황에서 실무적으로 도움이 될만한 몇 가지 팁을 소개합니다.

AI로 인한 코드 변경 시 브랜치 관리 팁

  1. 실험적인 브랜치: AI가 수정한 코드는 ai/product-draft와 같은 실험적 브랜치에서 작업하는 것이 좋습니다. 이렇게 하면 메인 브랜치와 별도로 변경 사항을 테스트할 수 있어서 리스크를 관리할 수 있습니다.

  2. 작은 단위로 분리: AI가 많은 코드를 변경했다면, 이를 가능한 작은 단위로 나누어 별도 브랜치로 관리합니다. 각 기능 단위나 논리적 변경점마다 별도 브랜치를 생성하여 리뷰와 테스트가 용이하도록 합니다.

  3. 단일 책임 원칙 준수: 한 개 브랜치에서 여러 변경 사항을 한 번에 처리하기보다는, 한 개 브랜치에는 한 가지 기능 수정이나 개선사항만 포함하도록 합니다. 이는 변경 사항이 명확하게 구분되고, 충돌 해결 시에도 도움이 됩니다.

  4. 코드 리뷰의 강화: AI가 변경한 코드 특성을 이해하기 위해 코드 리뷰 절차를 강화하고, 관련된 모든 이해당사자가 리뷰를 할 수 있도록 합니다. 이렇게 함으로써 의도치 않은 코드 변경으로 인한 리스크를 줄일 수 있습니다.

  5. 자동화된 테스트 사용: 변경된 코드에 대해 자동화된 테스트를 적극 활용합니다. 이로써 AI가 만든 변경 사항이 기존 시스템의 기능을 해치지 않는지 검증할 수 있습니다.

위의 전략을 통해 큰 변화가 있더라도 보다 안전하고 일관된 방식으로 코드 변경을 관리할 수 있습니다.

관련 주제에 대해 더 알아보고 싶다면, 아래에 유사한 질문이 담긴 링크를 참조하시길 추천드립니다:
- 코드 업데이트 및 관리 전략

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

3강 질문

0

13

1

Substack 1년 제공

1

16

3

특별 학습 자료 프로모션 1년 멤버십 무료 제공 문의드립니다

0

26

2

스프링부트 서버 에러나요

0

17

1

2026.04에 추가된 강의 시청 불가

0

23

1

강의 듣는 중인데,

0

23

1

36강 오탈자가 있는 거 같습니다.

0

18

2

Service Create/Update Record 운용과 Delete Record 미운용의 차이 질문

0

14

1

간단한 오타 제보입니다.

0

18

1

Sequence 관련 질문

1

29

2

Image Only Query

1

29

2

ProductOption을 통한 FindProductOption에 관한 질문

1

43

2

상수에 관련해서 질문있습니다.

1

42

2

null 을 많이 허용하지 않는 이유

1

54

1

JetBrains All Products Pack 3개월 이용권 신청 관련 문의

1

92

2

소스코드 보안

1

243

2

AI 사용 방법에 대하여...

1

120

2

PaymentValidator와 PaymentProcessor에서 주문과 결제를 중복 조회하는 구조에 대한 질문이 있습니다 !

1

65

3

결제 개념 컴포넌트 분리 기준과 네이밍 전략에 대한 질문있습니다 !

1

78

3

사용자가 상품을 선택하고 쿠폰을 고를 때 가장 혜택이 큰 쿠폰을 고르는 상황

1

105

2

장바구니 아이템 가격 기준?

1

109

2

인텔리제이에서 legacy 프로젝트 그레이들 인식 불가

1

140

4

예약 변경 시 '과거 정책 기준 재계산' 요구사항에 따른 스냅샷 데이터 구조 설계 고민

1

135

2

선생님

1

164

1