목록2024/11 (53)
내 잡다한 노트
현업에서 Git은 협업과 코드 관리를 위한 핵심 도구로 사용됩니다. **Git을 사용하는 작업 흐름(Git Workflow)**은 회사의 개발 방식, 팀의 협업 도구, 프로젝트 규모 등에 따라 달라질 수 있지만, 대부분 아래의 단계를 기본으로 구성됩니다. 1. 작업 시작 전: 프로젝트 클론새로운 개발자가 프로젝트에 참여하거나 작업을 시작할 때, 먼저 원격 저장소(Remote Repository)를 로컬로 클론합니다.이 명령은 저장소를 로컬에 복사하며, 원격 저장소 이름은 기본적으로 origin으로 설정됩니다. 2. 브랜치 관리현업에서는 브랜치를 사용하여 여러 개발 작업을 동시에 진행합니다. 대표적인 브랜치 관리 전략은 다음과 같습니다:(1) Main Branchesmain 또는 master: 항상 배포..
**PROVISIONING(프로비저닝)**은 IT와 클라우드 환경에서 자원을 설정, 준비, 관리하여 사용자가 사용할 수 있도록 만드는 과정을 의미합니다. 이는 물리적 하드웨어, 소프트웨어, 네트워크, 스토리지, 가상화 자원 또는 사용자 계정을 포함한 다양한 리소스를 포함할 수 있습니다. PROVISIONING의 기본 개념프로비저닝은 자원 할당 및 준비를 목적으로 하며, 주로 다음 단계로 구성됩니다:자원의 준비 (Preparation)필요한 하드웨어 또는 소프트웨어를 선택하고 설치, 설정.예: 클라우드 환경에서는 컴퓨팅 인스턴스를 생성하거나 데이터베이스를 설정.구성(Configuration)사용자 정의 요구사항에 맞게 시스템 또는 자원을 설정.예: 서버의 CPU, 메모리 크기, 네트워크 설정 등을 정의...
처음에 jenkins를 설치하고 password를 입력하고 플러그인을 생성한 뒤에 볼 수 있는 페이지이다.각각에 대해 알아보고자 글을 작성하게 됐다. 1. Freestyle Project설명: 가장 기본적인 Jenkins 작업 유형으로, 단순한 CI/CD 프로세스에 사용됩니다.SCM(소스 코드 관리)에서 소스 코드를 가져옴.빌드 단계를 직렬로 실행.빌드 후 단계(예: 아티팩트 저장, 이메일 알림 전송 등)를 추가 가능.특징:간단한 빌드/배포 파이프라인 구현.플러그인을 통해 추가 기능 확장 가능.적합한 경우:간단한 CI/CD 작업(예: 코드 빌드, 스크립트 실행).파이프라인 구성 없이 빠르게 작업 설정이 필요한 경우.2. Pipeline설명: Jenkins의 강력한 작업 유형으로, 스크립트 기반 파이프..
Jenkins에서 agent는 파이프라인 작업을 실행하는 데 필요한 환경을 제공하는 컴퓨터나 컨테이너를 의미합니다. 파이프라인의 각 단계(빌드, 테스트, 배포 등)는 이 agent에서 실행됩니다. 1. Jenkins의 Agent란?역할파이프라인 작업 실행Jenkins Master(Controller)에서 정의한 작업을 받아 실제로 실행하는 역할을 합니다.예: 소스코드 빌드, 테스트 수행, 배포 작업.작업 분배Jenkins Master는 작업을 분배하고 관리하며, Agent는 할당된 작업을 실행합니다.여러 Agent를 사용하면 작업을 병렬로 처리하거나, 특정 환경에서 실행할 작업을 분리할 수 있습니다.환경 제공빌드/테스트 작업에 필요한 도구와 라이브러리가 설치된 환경(예: 특정 운영체제, 도커 컨테이너 등..
Groovy는 Java 플랫폼 위에서 실행되는 동적 객체 지향 프로그래밍 언어입니다. Apache Software Foundation에서 관리하며, Jenkins와 같은 자동화 도구에서 스크립트를 작성하고 워크플로우를 정의하는 데 자주 사용됩니다. 1. Groovy란?Groovy는 다음과 같은 특징을 가진 프로그래밍 언어입니다:Java 기반 언어Groovy는 Java Virtual Machine(JVM) 위에서 실행되며, Java 코드와 100% 호환됩니다.Java 라이브러리를 직접 사용하거나 Java 코드와 혼합해서 사용할 수 있습니다.동적 타입 지원Java처럼 강타입 언어가 아닌 **동적 타입(dynamic typing)**을 지원하여 코드를 더 간결하게 작성할 수 있습니다.스크립팅 언어Groovy..
다이어그램의 구성1. 주요 구성 요소Actor: 일반적인 사용자입니다. 코딩 작업을 수행하거나, 질문(Query)을 입력하여 도움을 받으려고 합니다.클라이언트: 사용자(Actor)가 작업을 수행하는 로컬 환경입니다. 코드 작성, 코드베이스 조회, 쿼리 입력 등을 처리합니다.서버: 코드를 분석하고, 임베딩을 생성하여 벡터 데이터베이스(Vector DB)에 저장하거나 검색을 수행하는 백엔드 서버입니다. 2. 주요 흐름과 동작1) 일반적인 코딩 작업사용자가 코딩을 수행합니다.프라이버시 모드 ON/OFF:ON: 코드를 벡터 DB에 전송하거나 저장하지 않음(사용자 데이터가 보호됨).OFF: 코드를 분석(Chunking)하여 서버로 전송, 벡터 DB에 인덱싱.2) 코드 분석 및 저장(a) Chunking코드를 분석..
**생성형 AI(Generative AI)**란 주어진 데이터를 학습하여 새로운 콘텐츠(텍스트, 이미지, 음성, 동영상 등)를 생성하는 인공지능 기술을 말합니다. 기존의 데이터 분석이나 분류에 초점을 맞춘 AI와 달리, 생성형 AI는 새로운 창작물을 만드는 데 중점을 둡니다. 생성형 AI의 작동 방식생성형 AI는 주로 딥러닝 기반의 모델을 사용하며, 대표적으로 아래 두 가지 기술이 많이 사용됩니다:생성적 적대 신경망(GAN, Generative Adversarial Networks)두 개의 신경망(생성자와 판별자)이 서로 경쟁하면서 학습합니다.생성자는 데이터를 생성하고, 판별자는 진짜와 가짜를 구별하는 역할을 합니다.GAN은 주로 이미지 생성에 많이 활용됩니다. 예: 딥페이크, 가상 인물 생성.변형형 ..
Git WorkflowGit 작업 환경은 크게 3가지로 나뉜다:Working Directory: 작업 중인 파일이 있는 디렉토리.Staging Area: git add로 파일을 대기 상태로 이동..git Directory: git commit으로 기록 저장.push: .git Directory의 내용을 원격 저장소(GitHub)에 업로드.pull: 원격 저장소의 내용을 로컬로 가져옴.checkout: 특정 버전으로 돌아가 작업. 파일 상태와 트래킹Tracked: Git이 이미 관리 중인 파일.Unmodified: 수정되지 않은 파일.Modified: 수정된 파일.Untracked: 새로 작성된 파일로, 아직 Git이 관리하지 않음.