InfoGrab
InfoGrab

GitLab 코드 제안(Code Suggestions)으로 개발자의 생산성을 향상하는 방법

GitLab 코드 제안(Code Suggestions)으로 개발자의 생산성을 향상하는 방법

FabbroFabbro
MichaelMichael
··15 min read

Untitled

실습 컨텐츠(제작중)

설정방법

Gitlab Code Suggestion을 사용하기 위해서는 두가지 설정이 필요합니다~!

1. 최상위 Group 설정

  1. 최상위 Group에서 Settings > General 로 들어갑니다.

  2. Permissions and group features 섹션에서 Expand를 눌러서 열어줍니다.

    Untitled.png

  3. 아래 쪽에 Code Suggestions beta 섹션의 체크박스에 check를 합니다.

    Untitled.png

  4. 그리고 섹션 최하단에 Save changes 버튼을 눌러서 설정값을 저장합니다.

2. 사용자 설정

  1. 왼쪽 사이드바에서 아바타를 클릭하고 Preferences 를 들어갑니다.

    Untitled.png

  2. 아래 쪽에 Code Suggestions beta 섹션의 체크박스에 check를 합니다.

    Untitled.png

  3. 그리고 최하단에 Save changes 버튼을 눌러서 설정값을 저장합니다.

  4. 설정확인 링크에서user_is_allowed 의 값이 true이면 정상 적용이 된 것입니다.

* 더 자세한 설정 방법은 이 링크를 확인하세요.


새 프로젝트 만들기

1. GitLab에서 새로운 프로젝트 만들기.

  • Code Suggestions 가 허용된 Group에서 New project → Create blank project 진입합니다.

  • 별다른 설정 없이 Project name만 설정하여 프로젝트를 만듭니다.

    저는 계산기를 만들 것이라서 “Calculator”로 프로젝트를 만들었습니다.

    Untitled.png

2. 로컬에 프로젝트를 Clone하기.

  • 프로젝트를 로컬에 Clone합니다.

  • Clone한 프로젝트로 폴더로 이동하고 vscode를 실행합니다.

  • 이번 실습에서는 vite를 사용하여 app를 만들기 위해 vite환경을 설치합니다.

    shell
    npm create vite@latest .
    

    Untitled.png

  • vite 설치에 대한 commit를 하고 GitLab 레파지토리에 push합니다.


GitLab 웹IDE에서 계산기 컴포넌트 만들어보기

1. GitLab 웹IDE 실행 및 셋팅

  • 프로젝트에서 Edit > Web IDE 눌러서 웹 IDE를 실행합니다.

    Untitled.png

  • IDE하단에 status 바를 확인합니다. 만약 GitLab아이콘에 작대기(/)표시가 되어있다면

    Untitled.png

  • 하단의 톱니바퀴 아이콘을 눌러서 Settings 클릭합니다.

    Untitled.png

  • 설정 검색에서 gitlab으로 검색을 하고 Enable code completion (Beta)check합니다.

    Untitled.png

  • 설정이 완료되면 하단의 status바에서 GitLab아이콘에서 작대기가 사라지고 Code Suggestions 기능을 사용할 수 있게 됩니다.

    Untitled.png

2. 계산기 컴포넌트 만들기

원문

📝 번역본

이 블로그는 AI/ML을 구축하고 DevSecOps 플랫폼에 통합하기 위한 GitLab의 여정에 대한 지속적인 시리즈 중 최신 게시물입니다. 첫 번째 블로그 게시물은 여기에서 확인할 수 있습니다. 시리즈 전반에 걸쳐 제품, 엔지니어링, UX 팀의 블로그를 통해 GitLab에 AI/ML을 어떻게 도입하고 있는지 소개할 예정입니다.

빠르게 변화하는 소프트웨어 개발 세계에서 시간은 귀중한 자원입니다. 개발자는 워크플로우의 생산성과 효율성을 개선하기 위해 끊임없이 노력합니다. 일상적인 개발자 경험을 혁신할 수 있는 대규모 언어 모델(LLM) 기반 기술인 코드 제안을 소개합니다. 다음과 같은 코드 제안의 새로운 사용 사례를 자세히 살펴보세요:

  • 작업 간소화
  • 신규 개발자의 언어 탐색 지원
  • 숙련된 개발자의 잦은 웹 검색 필요성 제거

이 모든 사례는 코드 제안이 어떻게 일상적인 개발자 경험을 가속화할 수 있는지 보여주는 예시입니다. 이러한 사용 사례의 구체적인 예를 살펴보겠습니다.

패키지 import

코드 제안을 통해 개발자는 Python 패키지 import와 같은 일상적인 작업을 빠르게 완료할 수 있습니다.

Untitled.png

함수 완성하기

코드 제안은 개발자가 함수를 완성하고 해당 함수를 사용하여 코드를 작성하는 데 도움이 될 수 있습니다. 아래 예에서는 이름과 성을 정의한 다음 전체 이름을 정의하고 있습니다. 이제 한 단계 더 나아가 정의된 함수를 사용자 양식에서 사용할 수 있습니다.

Untitled.png

boilerplate 입력

개발자는 코드 제안을 사용하여 mySQL 데이터베이스 연결과 같은 boilerplate 코드를 추천할 수 있습니다.

Untitled.png

데이터 프레임 구축

데이터 조작은 구조화된 데이터로 작업하는 개발자에게 기본적인 작업입니다. 코드 제안은 데이터 프레임 작업에 대한 지능적인 권장 사항을 제공하는 프로세스를 간소화할 수 있습니다. 코드 제안은 개발자가 문서를 검색하거나 시행착오를 겪으며 실험하는 데 드는 시간과 노력을 절약하는 데 도움이 될 수 있습니다.

Untitled.png

단위 테스트 생성

코드 제안 기능을 통해 개발자는 지원되는 프로그래밍 언어에 대한 단위 테스트를 빠르게 작성할 수 있습니다.

지금 코드 제안 사용해 보기

코드 제안 기능은 현재 베타 버전으로 모든 사용자가 GitLab.com에서 무료로 사용할 수 있습니다. 팀은 개발하는 동안 코드를 제안하는 생성형 AI의 도움으로 효율성을 높일 수 있습니다. 제안의 품질을 개선하기 위해 매주 기본 AI 모델을 개선하고 있습니다. AI는 비결정적이기 때문에 매주 동일한 제안을 받지 못할 수도 있다는 점을 기억하세요. 또한 AI로 생성된 코드를 사용할 때마다 코드 품질 및 보안 스캔을 통해 자동으로 분석해야 하며, 이 두 가지 기능은 GitLab 플랫폼에서 기본적으로 제공됩니다.

지원 언어가 초기 6개 언어에서 현재 13개 언어로 확장되었습니다: C/C++, C#, Go, Java, JavaScript, Python, PHP, Ruby, Rust, Scala, Kotlin, TypeScript.

이러한 개선 사항과 향후 계획에 대해 자세히 알아보세요.

이러한 AI 기반 기능을 사용해보고 싶으신가요? 대기자 명단에 등록하여 아이디어를 공유하세요.

"데브섹옵스에서의 AI/ML" 시리즈를 계속 읽어보세요.

고지 사항: 이 블로그에는 향후 출시될 제품, 기능 및 기능에 대한 정보가 포함되어 있습니다. 이 블로그 게시물의 정보는 정보 제공 목적으로만 제공된다는 점에 유의하시기 바랍니다. 구매 또는 계획 수립의 목적으로 이 정보에 의존하지 마세요. 모든 프로젝트와 마찬가지로 이 블로그 및 링크된 페이지에 언급된 항목은 변경되거나 지연될 수 있습니다. 제품, 특징 또는 기능의 개발, 출시 및 시기는 GitLab의 단독 재량에 따라 결정됩니다.


GitLab 코드 제안(Code Suggestions)으로 개발자의 생산성을 향상하는 방법

빠르게 변화하는 소프트웨어 개발 세계에서 시간은 귀중한 자원입니다. 개발자는 워크플로의 생산성과 효율성을 개선하기 위해 끊임없이 노력합니다. 이 글에서는 일상적인 개발자 경험을 혁신하는 대규모 언어 모델(LLM) 기반 기술인 ‘코드 제안’을 소개합니다.

다음은 코드 제안의 사용 사례입니다:

  • 작업 간소화
  • 신규 개발자의 언어 탐색 지원
  • 숙련된 개발자의 잦은 웹 검색 필요성 제거

이 모든 사례는 코드 제안이 어떻게 일상적인 개발자 경험을 향상하는지 보여주는 예시입니다. 이러한 사용 사례의 구체적인 예를 살펴보겠습니다.

패키지 import

코드 제안으로 개발자는 패키지 import와 같은 일상적인 작업을 빠르게 완료할 수 있습니다.

import.gif

함수 자동 완성하기

코드 제안은 개발자가 함수를 완성하고 해당 함수를 사용하여 코드를 작성하는 데 도움이 될 수 있습니다. 아래 예에서는 first_namelast_name을 정의한 다음 full_name이라는 함수를 정의하고 있습니다. 그러면 정의된 함수에서 예상되는 추천 코드를 보여주고, 이를 사용할 수 있습니다.

functions.gif

Boilerplate 입력

개발자는 코드 제안을 사용하여 MySQL 데이터베이스 연결과 같은 Boilerplate 코드를 추천받을 수 있습니다.

mysql-boiler.gif

데이터 프레임 구축

데이터 조작은 구조화된 데이터로 작업하는 개발자에게 기본적인 작업입니다. 코드 제안을 사용하면 데이터 프레임 작업의 지능형 추천을 제공하는 프로세스를 간소화할 수 있습니다. 코드 제안은 개발자가 문서를 검색하거나 시행착오를 겪으며 실험하는 시간과 노력을 절약하는 데 도움이 될 수 있습니다.

dataframe.gif

단위 테스트 생성

코드 제안을 사용해 개발자는 지원되는 프로그래밍 언어의 단위 테스트를 빠르게 작성할 수 있습니다.

unit-test.gif

지금 코드 제안 사용해 보기

코드 제안은 현재 베타 버전으로 모든 사용자가 GitLab.com에서 무료로 사용할 수 있습니다. 팀은 개발하는 동안, 코드를 제안하는 생성형 AI의 도움으로 효율성을 높일 수 있습니다. 제안의 품질을 개선하기 위해 매주 기본 AI 모델을 개선하고 있습니다. AI는 비결정적이기 때문에 매주 동일한 제안을 받지 못할 수도 있습니다. 또한 AI로 생성된 코드를 사용할 때마다 코드 품질보안 스캔으로 이를 자동 분석해야 합니다. 이 두 가지 기능은 GitLab 플랫폼에서 기본적으로 제공됩니다.

지원 언어가 초기 6개 언어에서 현재 13개 언어로 확장되었습니다: C/C++, C#, Go, Java, JavaScript, Python, PHP, Ruby, Rust, Scala, Kotlin, TypeScript.

이러한 개선 사항과 향후 계획을 더 자세히 알아볼 수 있습니다.

✔️

이 블로그에는 향후 출시될 제품, 특징, 기능 정보가 포함되어 있습니다. 이 블로그 게시물의 목적은 오직 ‘정보 제공’임을 유의하세요. 구매 또는 계획 수립을 목적으로 이 정보에 의존하지 마세요. 모든 프로젝트와 마찬가지로 이 블로그 및 링크된 페이지에 언급된 사항은 변경되거나 지연될 수 있습니다. 제품, 특징 또는 기능의 개발, 출시 및 시기는 GitLab의 단독 재량에 따라 결정됩니다.

본 포스트는 영문 포스트를 우리말로 번역하고 요약 및 내용을 추가한 글입니다.

⚠️
해당 콘텐츠는 저작권법에 의하여 보호 받는 저작물로 기고자에게 저작권이 있습니다.
사전 동의 없이 2차 가공 및 영리적인 이용을 금하며, 온·오프라인에 무단 전재 또는 유포할 수 없습니다.

관련 태그

Fabbro

Fabbro

Software Engineer

Michael

Michael

Software Engineer

DevOps 도입이 필요하신가요?

인포그랩 전문가가 맞춤 을 도와드립니다.

인포레터에서 최신 DevOps 트렌드를 격주로 만나보세요!