Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 글쓰기자동화툴
- SEO최적화템플릿
- 급등주패턴
- n8n자동화
- 주식보조지표
- 주식분석
- AI자동화코딩
- 티스토리포스팅템플릿
- 로또1등번호예측
- 주식지표매수
- 고수익블로그
- 수익자동화툴
- 판매가계산
- 매매실패사례
- 숏츠자동화
- 성공방정식
- 금융파이프라인
- 자동화툴만들기
- npm
- 티스토리최적화템플릿
- 매수타점
- 유트브자동화소스코드
- 주가예측
- JP모건CEO
- JP모건
- 로또번호생성
- 주식지표
- n8n소스코드
- 쇼츠자동화
- 아마존CEO
Archives
- Today
- Total
핫트레이딩
AI 기반 자동 프로그래밍 시스템 – 전체 설계도 (8) 본문
Git 자동화(코드 저장 → Commit & Push) 단계로 진행하겠습니다.
이 단계가 끝나면 AI가 제안한 코드를 자동으로 저장 → GitHub에 버전 관리할 수 있습니다.
1. 목표
- FastAPI 백엔드가 AI가 생성한 코드를 파일로 저장
- 저장된 파일을 Git에 Commit & Push 자동 실행
- React에서 “코드 저장 & Git Push” 버튼 클릭 → 모든 과정 완료
2. Git 사전 준비
- Git 설치 여부 확인:
bashgit --version
- 프로젝트 디렉토리(backend)에서 Git 초기화:
bashcd backend
git init
git remote add origin https://github.com/사용자명/저장소명.git - GitHub Personal Access Token 생성 (비밀번호 대신 사용)
https://github.com/settings/tokens
3. 백엔드 기능 추가 (코드 저장 & Git Commit/Push)
backend/main.py에 추가:
python
import subprocess
from datetime import datetime
CODE_SAVE_PATH = "generated_code.py"
@app.post("/save_and_push")
def save_and_push(note: DeveloperNote):
"""
1) AI 코드 생성
2) 코드 저장
3) Git Commit & Push
"""
try:
# (1) AI에게 코드 요청
prompt = f"""
프로젝트 이름: {note.projectName}
필수 기능: {', '.join(note.mustHave)}
제외 기능: {', '.join(note.mustNotHave)}
승인 필요한 변경사항: {', '.join(note.reviewRequired)}
위 정보를 기반으로 Python(FastAPI) 예제 코드를 작성해 주세요.
"""
response = openai.ChatCompletion.create(
model="gpt-4o-mini",
messages=[{"role": "system", "content": "당신은 전문 개발 보조 AI입니다."},
{"role": "user", "content": prompt}],
max_tokens=500
)
ai_code = response.choices[0].message["content"].strip()
# (2) 코드 저장
with open(CODE_SAVE_PATH, "w", encoding="utf-8") as f:
f.write(ai_code)
# (3) Git Commit & Push
subprocess.run(["git", "add", CODE_SAVE_PATH], check=True)
commit_msg = f"Auto commit: {note.projectName} ({datetime.now()})"
subprocess.run(["git", "commit", "-m", commit_msg], check=True)
subprocess.run(["git", "push", "origin", "main"], check=True)
return {"message": "코드 생성 및 Git Push 완료", "file": CODE_SAVE_PATH}
except subprocess.CalledProcessError as git_error:
return {"error": f"Git 명령 실행 실패: {git_error}"}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
4. 프론트엔드(React) 버튼 추가
frontend/src/App.js:
javascript
const handleSaveAndPush = async () => {
const note = {
projectName,
mustHave: mustHave.split(",").map(item => item.trim()),
mustNotHave: mustNotHave.split(",").map(item => item.trim()),
reviewRequired: reviewRequired.split(",").map(item => item.trim())
};
try {
const res = await fetch("http://127.0.0.1:8000/save_and_push", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(note)
});
const data = await res.json();
if (data.message) {
alert(data.message + "\n저장 파일: " + data.file);
} else {
alert("실패: " + JSON.stringify(data));
}
} catch (err) {
console.error("저장 & Git Push 실패:", err);
}
};
UI 버튼 추가:
javascript
<button
onClick={handleSaveAndPush}
className="bg-purple-500 text-white px-4 py-2 rounded-lg hover:bg-purple-600 mt-2"
>
코드 저장 & Git Push
</button>
5. 동작 흐름
- React에서 “코드 저장 & Git Push” 클릭
- FastAPI → AI 호출 → 코드 생성 → generated_code.py 저장
- Git Commit & Push → GitHub 저장소로 자동 반영
6. 이로써 가능한 것
- 프론트에서 노트 입력 → AI 코드 생성 → GitHub 저장소 업데이트
- 초보 개발자도 “기능 정의 → 자동 코드 생성 → 버전 관리” 파이프라인 구축 가능
다음 단계 제안 (최종 단계):
- 전체 시스템 설계도(프론트-백-AI-Git 흐름도) 작성
- 운영 시 주의사항(보안, 개선점) 정리
반응형
'IT 정보 > 인공지능 Ai' 카테고리의 다른 글
| n8n 유튜브 쇼츠 완전 자동화 원클릭 셋팅 코드 첨부 (3) | 2025.11.22 |
|---|---|
| AI 기반 자동 프로그래밍 시스템 – 전체 설계도 (최종) (1) | 2025.08.26 |
| AI 기반 자동 프로그래밍 시스템 – 전체 설계도 (7) (0) | 2025.08.26 |
| AI 기반 자동 프로그래밍 시스템 – 전체 설계도 (6) (0) | 2025.08.26 |
| AI 기반 자동 프로그래밍 시스템 – 전체 설계도 (5) (0) | 2025.08.26 |
