From 8067507e6bf6232606849f41a47bb056098b305b Mon Sep 17 00:00:00 2001 From: jungwoo choi Date: Thu, 27 Aug 2026 17:02:29 +0900 Subject: [PATCH] =?UTF-8?q?yakcloud=20init:=20=EC=95=84=EC=B9=B4=EC=9D=B4?= =?UTF-8?q?=EB=B8=8C(=EB=AC=B4=EC=9D=91=EB=8B=B5)=20=EB=8C=80=EC=8B=A0=20g?= =?UTF-8?q?it=20clone=20=EB=B0=A9=EC=8B=9D=EC=9C=BC=EB=A1=9C=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 --- .claude/skills/yakcloud-deploy/assets/bin/yakcloud | 9 +++++++-- bin/yakcloud | 9 +++++++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/.claude/skills/yakcloud-deploy/assets/bin/yakcloud b/.claude/skills/yakcloud-deploy/assets/bin/yakcloud index 77e3273..fee1b42 100644 --- a/.claude/skills/yakcloud-deploy/assets/bin/yakcloud +++ b/.claude/skills/yakcloud-deploy/assets/bin/yakcloud @@ -22,8 +22,13 @@ cmd_init() { die "폴더가 비어있지 않습니다. 빈 폴더에서 실행하거나 'yakcloud init ' 로 새 폴더에 생성하세요." fi info "yakcloud-starter 내려받는 중… ($REPO @ $BRANCH)" - curl -fsSL "$REPO/archive/$BRANCH.tar.gz" | tar xz --strip-components=1 \ - || die "스타터 다운로드 실패 — 네트워크/레포 공개 여부 확인" + command -v git >/dev/null 2>&1 || die "git 이 필요합니다." + local tmp; tmp="$(mktemp -d)" + git clone -q --depth 1 -b "$BRANCH" "$REPO.git" "$tmp/s" \ + || { rm -rf "$tmp"; die "스타터 클론 실패 — 네트워크/레포 공개 여부 확인 ($REPO)"; } + rm -rf "$tmp/s/.git" + cp -R "$tmp/s/." . # 숨김파일 포함 전부 현재 폴더로 + rm -rf "$tmp" # 프로젝트 이름 치환(선택) if [ -n "$name" ] && [ -f yakcloud.yaml ]; then sed -i.bak "s/^project: .*/project: $name/" yakcloud.yaml && rm -f yakcloud.yaml.bak diff --git a/bin/yakcloud b/bin/yakcloud index 77e3273..fee1b42 100755 --- a/bin/yakcloud +++ b/bin/yakcloud @@ -22,8 +22,13 @@ cmd_init() { die "폴더가 비어있지 않습니다. 빈 폴더에서 실행하거나 'yakcloud init ' 로 새 폴더에 생성하세요." fi info "yakcloud-starter 내려받는 중… ($REPO @ $BRANCH)" - curl -fsSL "$REPO/archive/$BRANCH.tar.gz" | tar xz --strip-components=1 \ - || die "스타터 다운로드 실패 — 네트워크/레포 공개 여부 확인" + command -v git >/dev/null 2>&1 || die "git 이 필요합니다." + local tmp; tmp="$(mktemp -d)" + git clone -q --depth 1 -b "$BRANCH" "$REPO.git" "$tmp/s" \ + || { rm -rf "$tmp"; die "스타터 클론 실패 — 네트워크/레포 공개 여부 확인 ($REPO)"; } + rm -rf "$tmp/s/.git" + cp -R "$tmp/s/." . # 숨김파일 포함 전부 현재 폴더로 + rm -rf "$tmp" # 프로젝트 이름 치환(선택) if [ -n "$name" ] && [ -f yakcloud.yaml ]; then sed -i.bak "s/^project: .*/project: $name/" yakcloud.yaml && rm -f yakcloud.yaml.bak