refactor: перенос файлов в claude/ + мульти-продуктовая структура
- Все claude-файлы перенесены в claude/ (uclaude_updater.py, скрипты, config) - claude/README.md с инструкцией для Claude Code - Корневой README — общий для всех продуктов (claude, codex, gemini, qwen, antigravity) - Node.js v24.13+ автоустановка через nodesource - Sparse checkout: клиент скачивает только latest версию cli.js Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
28
claude/uclaude_update.sh
Executable file
28
claude/uclaude_update.sh
Executable file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
# UClaude Updater — automatic Claude Code patch updater
|
||||
# Usage: sudo bash claude/uclaude_update.sh [--check] [--force] [--settings-only]
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
REPO_ROOT="$(dirname "$SCRIPT_DIR")"
|
||||
cd "$REPO_ROOT"
|
||||
|
||||
# Fetch latest commit (shallow — no history)
|
||||
git fetch --depth 1 origin master 2>/dev/null && git reset --hard origin/master 2>/dev/null || git pull --quiet 2>/dev/null || true
|
||||
|
||||
# Update sparse checkout to include latest version directory
|
||||
if [ -f claude/releases/index.json ] && git config core.sparseCheckout 2>/dev/null | grep -q true; then
|
||||
VER=$(python3 -c "import json; print(json.load(open('claude/releases/index.json'))['latest'])" 2>/dev/null)
|
||||
if [ -n "$VER" ]; then
|
||||
git sparse-checkout add "claude/releases/v${VER}" 2>/dev/null
|
||||
git checkout 2>/dev/null || true
|
||||
fi
|
||||
fi
|
||||
|
||||
# Run updater
|
||||
if [ "$(id -u)" -eq 0 ]; then
|
||||
python3 claude/uclaude_updater.py "$@"
|
||||
else
|
||||
echo "Root privileges required. Re-running with sudo..."
|
||||
sudo python3 claude/uclaude_updater.py "$@"
|
||||
fi
|
||||
Reference in New Issue
Block a user