-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup_github.sh
More file actions
executable file
·52 lines (41 loc) · 1.32 KB
/
setup_github.sh
File metadata and controls
executable file
·52 lines (41 loc) · 1.32 KB
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/bash
# GitHub仓库自动创建和推送脚本
# 使用方法: ./setup_github.sh [仓库名称]
# 例如: ./setup_github.sh MDS5110
set -e
if [ $# -lt 1 ]; then
echo "使用方法: $0 <仓库名称>"
echo "例如: $0 MDS5110"
exit 1
fi
REPO_NAME=$1
# 检查是否安装了GitHub CLI
if ! command -v gh &> /dev/null; then
echo "❌ GitHub CLI (gh) 未安装"
echo "请先安装: brew install gh"
echo "然后运行: gh auth login"
exit 1
fi
# 检查是否已登录GitHub
if ! gh auth status &> /dev/null; then
echo "❌ 未登录GitHub"
echo "请运行: gh auth login"
exit 1
fi
# 检查当前目录是否为Git仓库
if [ ! -d ".git" ]; then
echo "❌ 当前目录不是Git仓库"
echo "请先在作业目录中运行此脚本"
exit 1
fi
echo "🚀 正在创建GitHub仓库: $REPO_NAME"
# 创建GitHub仓库
gh repo create "$REPO_NAME" --private --description "Assignment repository for $REPO_NAME" --confirm
# 添加远程仓库并推送
git remote add origin "https://github.com/$(gh api user --jq .login)/${REPO_NAME}.git"
git branch -M main
git push -u origin main
echo ""
echo "✅ GitHub仓库创建完成!"
echo "🔗 仓库地址: https://github.com/$(gh api user --jq .login)/${REPO_NAME}"
echo "📝 仓库已设置为私有,如需公开请在GitHub网站上修改设置"