Github指南:0
虽然HKU CS大一用到github的机会不多,但是早点掌握肯定不是个坏事。 MIT大名鼎鼎的Missing Semester里就有一节课讲了git和版本控制
但是根据我对本篇博客的受众的推测(假定真的有受众),多半是还没搞明白git和版本控制到底有啥用,所以我要开始碎碎念了。碎碎念
我真正意识到需要版本控制的经历来自于玩polymarket。 我从github上clone了一个跟单bot,调好了api,用自己电脑跑了一个晚上赚了7美刀。 我爽飞了。开始设置止盈止损,这个时候还能赚一点钱。 然后我开始排列组合各种alpha因子,反弹率,订单簿。抢尾盘。 然后我跑了一个晚上亏了50美元。 这个悲剧告诉了我两个道理:
- 别用自己电脑跑bot,用服务器
- 放心修改bot的前提是,你得再爆亏之后,随时回到赚钱版本的老bot That’s why we need version control.
Github指北
鉴于我会的也不多,我只教最最简单的操作。
如你所见,我有一个账号,上面有很多东西。以CS61A为例,我给你示范一下如何下载。
我们发现这个项目的网址,于是在linux的命令行中输入
git clone https://github.com/Neutralmilkzzz/CS61A-2025-Fall
我就把他克隆了下来。
2 修改
touch change.py之后,我成功地做到了在原文件夹捏造了一个python文件。
你也可以干别的坏事。
3 同步更新
git pull --rebase origin main
其实pull就行了,–rebase是处理冲突的
4 上传新文件
git add sth
一般来说我们也不在意上传哪部分,一股脑全扔上去得了,那么就用
git add .就行
5 提交说明
解释一下你为啥要更新
git commit -m "upload IntList.java"
6 认证身份
臭名昭著大名鼎鼎的cc好课CCST9017教会了我们RSA,也告诉了我们:一对私钥与公钥可以用于鉴别身份,因为只有私钥的拥有者能生成一个数字签名(Digital Signature)。任何拥有公钥的人,都无法通过公钥推算出私钥,但可以使用公钥来验证该数字签名是否确实由匹配的私钥所创建。因此,公钥的使用者可以确认签名者(即私钥拥有者)的身份是真实的。
github为了保证绝对安全,在2021年之后不再能用账号密码登录,而是转为ssh key
首先你需要在本地生成一对ed25519的密钥,把公钥上传到github/settings/ssh key,加入一个新的key。
这串代码我忘了,keygen什么的,问问ai,他肯定知道。
然后登录
ssh -T git@github.com
收到这个
Hi XXXXXX! You've successfully authenticated, but GitHub does not provide shell access.
就说明你成功了
7 设置远程仓库为ssh模式
git remote set-url origin git@github.com:Neutralmilkzzz/XXXXXXXXX.git
8 推送
git push origin main
这就是github基本操作了。下次我们仔细讲讲git