粉丝51获赞1547

在使用 git 进行项目管理时,若要将远程项目复制到本地及 colorm, 操作主要有以下两种途径,其一可借助 s s h。 协议进行克隆。其二则是通过 http 协议来完成克隆。通过 s s h 克隆 git 项目,其实就三步, 生成密钥。配置平台执行 cologne。 创建 s s h key 的 流程就是在本机生成一对密钥,公钥私钥,然后把公钥复制到 github gitlab 公司代码托管平台里, 用来免密安全登录。在生成新的 s s h。 密钥之前,检查本地计算机是否存在现有密钥。一、打开 git bash。 二、输入命令,收到错误提示,文件夹不存在,表明当前计算机不存在 s s h 密钥。 一、打开 c m d, 输入如下命令,请输入密钥要保存到哪个文件路径?默认式,直接按下回车键,提示输入密钥口令,直接按下回车键。再次提示输入密钥口令, 直接按下回车键, s s h。 密钥成功生成。复制公钥文件里面全部的内容。在 gitup 任意页面的右上角,点击你的个人资料照片,单机 settings, 单机左边的 s s h and g p g keys, 点进 new s s h key title, 自定义 s s h, 把刚刚复制的公告内容粘贴到这里。最后点击 at s s h key tikop, 提示你正在进入 suoto mode, 意思是你要做受保护的操作, 比如新增删除 s s h key, 必须再验证一下。 use pass key, 用通行密钥、指纹人脸 windows hello 安全密钥等验证。 use your password, 用账号密码验证。遇到 pass key 不 方便时用这个。这里我选择用账号密码验证。 输入密码后点击 confirm 妙,创建成功 git hub, 找到一个项目,复制它的 s s h 地址,打开 git 命令行,输入 g t clown 的 项目 s s a 起地址,项目下载到本地成功。

嘿,大家好,今天咱们来聊一个东西,叫 get up, 你 可能听过,也可能觉得这玩意听起来就特复杂,对吧?别担心,今天我就保证用最最简单的话把它给你讲明白,就算你一行代码都没写过,听完这个你也能懂个八九不离十, 所有那些听起来吓人的专业术语,我们都会把它掰开揉碎了。讲来,先问你个问题啊,你有没有经历过那种让人想砸电脑的绝望时刻?就是电脑啪一下蓝屏了,或者直接黑了,然后你辛辛苦苦熬了好几个通宵,写的代码 就这么全没了,一干二净。哇,那种感觉真的简直是晴天霹雳,太难受了! 或者还有一种情况,你是不是也怕过这个就是你觉得?嗯,我来试试加个小功能,或者改动一下,这里看效果。结果呢,就这么一个小小的改动,哎,整个项目直接崩了,动不了了。更要命的是,你想改回去,却发现完了,不记得之前是怎么写的了。 你看,像刚才说的那样提心吊胆的写代码,我管这道硬核模式编程真的,这就跟玩游戏开了最高难度一样,没有任何存档点,没有任何后悔药,走错一步,那就得从头再来,太刺激了,也太折磨人了。 那怎么办呢?有没有什么办法能让我们不玩这个硬核模式?当然有,那就是它 github, 说白了,它最核心的功能就是一个超级宝箱,你能把你电脑上的代码安全安全的存到云上去。 好啦,那这个 github 到底为什么这么牛,几乎是所有程序员的必备工具呢?咱们今天就来揭秘它的四大超能力,看看它到底厉害在哪? 这四大超能力啊,分别是,第一也是最重要的叫版本控制,简单说就是给你的代码随时存档。第二呢,是团队写作,让好几个人一起写代码,变得超级简单。第三,他是个巨大的宝库,你能找到海量的免费代码, 最后他还提供了一堆专业级工具给大公司用的。可以说这四点就是全世界开发者都离不开他的原因。 咱们再用个比喻啊,这个比喻特别形象,你想想,你玩超级马里奥对吧?要是没有 get, 那 就等于你在玩一个没有任何存档器的专家模式,掉坑里了。对不起,请从第一关重新开始,是不是很崩溃? 没错,这个存档器啊,就是我们说的版本控制,他的作用就是让你能随时随地给你的代码创建一个存档点,这样一来,万一你后面把代码改崩了,或者加的新功能不想要了,没关系,你随时可以独档,回到之前任何一个好的状态。 有了版本控制,团队写作也就变得超级简单了。你想想,以前可能是小明改了文件发给你,你再改改,发给小红,传来传去,最后都不知道哪个是最终版。现在呢,小明和小红可以同时在一个项目上工作,各干各的, get up 会清清楚楚的记录下谁改了什么,最后再把大家的工作合并到一起,再也不用担心把别人的代码给覆盖掉了。 而且啊, get up 还是一个巨大的代码宝库,上面有无数的免费代码,我们管这个叫开源,这是什么意思呢?打个比方,街边有两个柠檬水摊,一个摊位写着免费畅饮,另一个写着一杯一美元,那一美元的你肯定希望它好喝对吧?因为它是个商业产品。 而那个免费的呢,可能是某个热情的大爷自己做的,也许味道一般,但也可能,哇塞,是你喝过最好喝的柠檬水。开源软件就是这杯免费的柠檬水,它是由全世界的开发者社区一起贡献的,里面藏着各种各样的惊喜。 那对大公司来说呢? github 也有很多专业级的工具,比如说一个超级大的软件,可以把它拆成很多小块来管理,互不干扰,还可以设置权限,让每个程序员只能看到和修改自己负责的那部分代码,这样更安全, 而且整个发布新版本的流程也能变得飞快。好,咱们刚才讲了半天,为什么要用 get up, 那 现在咱们就来聊聊它到底是怎么工作的。别怕,我们只讲最核心、最基本的概念。 第一个概念叫仓库,英文是 repository, 大家一般都简称 repo。 这个词听起来挺大,但其实它就是一个项目文件夹, 没错,就是你电脑上的那种文件夹,只不过这个文件夹是放在 github 上的,里面装着你这个项目需要的所有代码、图片、文档等等。 在这个仓库里呢,有一个超级重要的概念叫做分支。你可以想象成有两条路,一条是主路,叫主分支,也就是 main。 这条路上跑的是已经测试好能稳定运行的正式版代码,这条路绝对不能出问题。 另一条呢,是旁边的小路,叫功能分支,你可以在这条小路上随便折腾,做各种实验,开发新功能。 所以说白了,创建一个分支,就等于把你主路上的代码完完整整的复制了一份,拿到小路上去。这样一来,你在小路上不管怎么改,哪怕改的天翻地覆,都影响不到主路上那个稳定的版本。这就给了你一个绝对安全的工作区。 好,你在你的小路上开始写代码了。这个过程又有一个好玩的比喻,比如说你玩上古卷轴,一时手贱,在城里放了个火,结果惹了全村的人都来追杀你。 这时候你心里想的肯定是,哎呀,完蛋,赶紧堵挡,回到我放火之前的那个存档点,对吧?这个存档点啊,在 github 的 世界里就叫提交,英文是 commit, 你每完成一小部分工作,比如写好了一个小功能,或者修复了一个 bug, 你 就可以提交一次。这一下就等于给你的代码拍了张快照,把当前的状态给存下来了。 好了,你在你的小路上,也就是功能分值上辛辛苦苦写代码存了好多次的,也就是提交了好多次,最后终于把新功能做完,并且测试好了。那接下来干嘛?总不能让他一直待在小路上吧? 这时候就要走最后一步了,叫拉取请求,英文是 pull request, 简称 p 二。这其实就是你发起一个申请,跟项目管理员说,嘿,我这边的新功能做好了,代码很棒,你看看能不能把它合并到主路上去,让大家都能用上。 好了,到这里, github 最核心的流程咱们就讲完了,我们来总结一下,这套东西到底给我们带来了什么。其实很简单,它就是一张巨大的牢不可破的安全网, 你还记得我们最开始说的那些噩梦吗?在没有 github 的 硬核模式下,你随时可能丢数据,代码改乱了也找不回来,几个人一起干活更是乱成一锅粥。 但是有了 get up 呢?这些问题全解决了。你的代码有云端备份,不怕丢,你做的每一步修改都有记录,随时可以回溯,团队合作也是清清楚楚,井井有条。 所以,如果今天你只能记住一句话,那我希望是这句,无庸如何。一定要保护好你的 main 主分支,要像保护自己的眼睛一样保护它,因为那才是你项目真正能用的,活着的代码是你的生命险。 所以你看 github, 它真的不只是一个冷冰冰的工具,它更像是一个守护神,是你的安全网。有了它,你才敢放手去尝试,去创新。同时呢,它还是一个放大器,是你的协助中心,能让你和你的团队发挥出一加一大于二的力量。 那么现在你的代码安全了,你的团队合作也变顺畅了。下一个问题就留给你了,你准备好去创造点什么酷东西了吗?

在 coser 里,用 ai 辅助开发 git 不是 一个可有可无的工具,而是你的核心安全网。 ai 生成的代码往往具有实验性,只要你对当前进度满意并及时提交,就等于给项目存了个档。后面 ai 哪怕把代码改乱了,你也能随时回退到之前的稳定版本。 它还是团队协助的底座,能有效避免多人同时调用 ai 产生的代码冲突。最重要的是,它给了你实验自由, 你可以大胆开分枝,去尝试 ai 给出的各种激进建议,成了就合并,败了就回滚,这种零成本的试错能力,才是高效开发的保障。 很多人容易把 git 和 gitup 搞混,其实它们完全是两码事。 git 是 装在你电脑里的软件,是一个纯粹的工具,专门负责记录代码的每一次变动。而 gitup 或者 gitup 是 基于 git 开发的网站,也就是代码托管平台。 简单来说, git 是 干活的,平台,是存活的。除了存代码,平台还提供了向问题讨论、合并请求以及自动化部署这些高级协助功能。 我们可以打个比方, git 就 像你手里的记账本,每一笔代码的增删改查,它都记得清清楚楚。而 git 或者 git 就 像是银行, 你把账本里的钱存进去,别人才能看到并和你做交易。至于选哪个平台,如果你追求全球开源生态, getapp 是 不二之选。但如果你不想折腾网络环境,希望访问速度快,那国内的机器体验会更好。 大家根据自己的实际情况选一个就行。安装 git 没什么门槛,直接去官网下载对应系统的安装包,一路点击下一步就行。装完之后,打开终端,敲入 git 空格两个短横线 version, 只要看到屏幕上跳出了具体的版本号,就说明你的 get 环境已经彻底搞定了,我们可以进入下一步环境。装好后,第一件事是自报家门,你需要把你的名字复制给局用户名变量。 命令是 git config 空格两个短横线 global 空格 user 点 name, 后面跟着你的名字,接着用同样的格式把你的邮箱复制给局用户。邮箱变量这一步非常关键,因为 git 必须知道每一行代码到底是谁写的, 有了这些身份信息,后续的提交记录才能做到有据可查。最后,你可以敲入 get config 空格两个短横线 list, 来检查一下配置是否已经生效。 配置 s s h 的 第一步是生成一对密钥,在终端输入三十短横线,递进空格短横线 t, 后面跟着一 d 二五五幺九算法, 再用短横线大写 c, 把你的 github 邮箱地址复制给注示参数。这个算法比传统的 rsa 更快,也更安全。直行后一路回车,使用默认路径和空密码即可。密钥对就生成好了, 有了密钥还得让系统管起来。先执行 evo, 后面跟着双引号扩起来的 s h h 短横线 agent 空格短横线 s。 这项命令会启动后台代理进程。 接着执行 s a s h 短横线 add 命令,把刚才生成的私钥文件路径复制给添加参数,这样你的电脑就记住了这把钥匙,以后访问远程仓库就不再需要反复输入密码了。 现在要把公钥交给 git, 苹果用户用 p b copy 命令, windows 用户用 clip 命令,把以点 pub 结尾的公钥文件内容提取到剪贴板,注意千万别动那个没有后缀的私钥文件。 然后登录 git, 进入设置里的 s s h 密钥页面,点新建,把剪贴版里的内容直接粘贴进去,起个名字保存就行。 最后一步,验证连接输入 s s t 空格,短横线大写 t 空格 git at gitlab 点 com。 如果终端返回了带有你名字的欢迎信息,并明确告诉你已经成功认证,那就说明这条安全通道彻底打通了。以后你在 cursor 里推送代码 就像在本地保存文件一样顺滑。登录 github, 点击右上角的加号,选择新建仓库,填好名字,根据项目性质 选好公开还是私有,直接点创建。这一步最核心的目标是拿到那个已点 git 结尾的远程地址,它就是你本地代码未来要投送的云端站点。回到本地项目根目录,先执行 git in you, 把当前文件夹正式转化为 git 仓库。接下来的关联操作非常关键,我们要把刚才复制的远程地址复制给名为 origin 的 远程变量,命令是 git remote add origin, 后面接上地址。 这一步做完,本地项目和云端仓库就彻底打通了, origin 以后就代表了你的远程目的地。关联好仓库后,最基础的操作就是命令行三板斧。首先执行 get add 点,把当前目录下所有的修改全部复制给暂存区。 接着执行 get commit 短横线 m, 把你的提交说明复制给消息参数,完成本地存档。最后敲入 get push, 把本地的分支同步到云端。这套流程虽然稳,但每次都要手动写,提交信息确实有点繁琐。 在 cursor 里,我更推荐你用它的图形化界面,点开左侧的分值图标,所有改动过的文件一目了然。最爽的功能是消息框旁边那个星星图标,点一下, ai 就 会自动分析你刚才到底改了哪些逻辑, 然后把精准的描述文字直接复制给提交框。它生成的记录通常比你自己写的要专业得多,完全省去了抓耳挠腮想词的麻烦。 确认 ai 生成的信息没问题后,直接点提交并同步,代码就从本地飞到了云端。 这种把 ai 融入版本控制的工作流,能让你把精力全放在写代码上,而不是折腾工具。学会了 get, 你 的 ai 开发才算有了后悔药。下集我会带你解锁 cursor 的 高级调试技巧, 教你如何让 ai 帮你精准定位并修复 bug。 别忘了点个关注,我们,下期见!掌握这九个核心命令,你就能应付九成以上的 ai 开发场景。 get tab 点负责暂存。 get commit 短横线 m, 把说明文字复制给提交参数。 get push 推送到远程 拉取用 pull, 看分支用 branch, 切分支用 check, 再加上合并分支的 merge, 看状态的 status 以及查历史的力气,这套组合拳打下来,你的代码库就稳如泰山。 合理使用版本控制,本质上是给你的 ai 开发买了一份保险,让你在追求高效率的同时,始终握着后悔药。 下集我会带你深入 cursor 的 高级调试技巧,看看怎么让 ai 帮你精准定位那些藏得很深的 bug。 觉得有帮助就点个关注,我们下集见!

兄弟们啊,我感觉我非常有必要跟大家分享一下 github 的 education pack 到底怎么申请?学生认证 这个东西是干啥用的呢?主要是那个 copilot 吧, copilot pro 那 个那个其他版的 ai 嘛,特别特别好用,在 visco 的 里那个内嵌的,然后以前只有三十天试用,然后用完之后就不能用了,特别难受啊。 然后这个可以白嫖的呀,就必须申请一下。我本来以为我跟那个 jetbrain 那 个 id 不是 要付钱的吗? id 学生认证之后也是可以让你免费用。那个申请就非常简单啊,怎么样都能过,但是这个 github 这个贼难申请, 我被那个点奈了好多次,我看到点奈这个词我都要,我都要那个 p t s d 了,而且他那个那个拒绝你特别快,你的中文材料特别快,就拒绝你,两三分钟给你拒了,这什么鬼?所以接下来看我操作,我教大家怎么搞, 主播特意开了个小号给大家演示一下,首先有这几个步骤,我截个图啊,给大家放着, 然后你给它不进来的话,就是这样的嘛,你点右上角你的自己个人信息这个 setting。 首先我们就是要申请一个 edu 邮箱啊, 你就是去你们自己大学的,你搜你们自己大学,然后加一个什么啊, edu 邮箱自助申请,你就可以看到线上可以申请了, 我们把这个邮箱申请下来,大概就是你的学号,然后 at 一个你们学校的名字啊,再加什么什么什么,在 e d u 点 c n, 就是 这样的,把它搞下来。然后接下来呢,我们就要填这个 github 里的个人信息了。 首先这个非常重要啊,你的名字 public profile 里的名字,你就填你自己的名字啊,用英文填,比如说徐坤蔡啊,记得首字母大写,然后空一下啊, 之后你保存一下 update profile。 之后呢?第二步来到这个 payment information, 也就是这里 我就不保存了啊,这个小号,然后你记得这个 first name 就是 刚刚填的,你就填这个,什么徐坤 last name 就是 thai, 对 吧? address 你 就填你们大学的地址,你去百度搜一下,你中文填就行了。 city 的 话啊,也是中文填 country 就是 china 嘛, china, 对 吧?然后这个就是啊,这个,这个,这个,比如说浙江, 对吧?然后这个就是邮政编码,你看一下你们学校所在那个地方邮政编码是多少,然后最后你 saving 一下。第三步的话,有一个双因素验证啊,就在这里, 然后这里就是 two factor authentication, 你 enable 一下有点小麻烦呢。这个东西你要扫这个二维码,如果你是这个 苹果手机的话,你直接用苹果手机那个相机直接扫就可以了,然后弹出来一个链接,你就点进去,苹果手机不是有那个 password, 那 个自带的 a p p 吗? 它就会帮你弹出来,里面会自动给你一个验证码,好像是倒计时三十秒的,然后你把这验证码弹到填到这里就可以了,它会自动刷新的。嗯,如果你不是苹果的话,你就可以去安卓的话,你就去下载这个东西, microsoft authenticator, 你 去应用市场搜,你去,你去应用市场搜一下这个东西,然后下载完之后也是扫这个码就可以了。之后 之后呢,我来扫一下吧,然后你把你自己这些东西保存一下这个密钥吧,相当于是密钥 保存完之后就 ok 了。接着接着就是比较重要的地方来了,你要真的去申请了,我们到这个 building and licensing 这个地方点这个 education benefits, 我 们这里就准备要正式开始申请了。然后开始申请之前呢啊,最好在这个邮箱这里, 邮箱这里你填下你这个,添加一下自己那个刚刚申请这个 edu 邮箱,学校里的邮箱哦,填完之后,添加完之后你就到这里来 education benefits, 然后你就可以开始申请了。你刚刚添加过的话,这里就会直接弹出来一个绿色的框,然后问你,你是不是要选择啊?你这个 edu 邮箱对应的学校呢?你就选市就可以了。接着你就开始可以 share location 了,这里是一个非常大的问题哦, 我们知道大家可能不在学校里吗?不在学校里或者放寒假了,或者怎么样?他有时候在学校里也会有问题啊,或者你开着那个魔法,他就会给你出问题。那我们怎么办呢?这是个非常屌的点啊,我在网上学到的,你这样按住 f 十二 弹出这个东西来,对吧?这 ctrl 来这个开发者工具,然后点这个添加键传感器,哎,大家最好用这个 edge 啊, chrome, 我 没试过 edge, 就是 有这个加号,然后传感器就点一下 chrome, 我 不知道有没有。然后这里点这个管理, 你添加一个位置啊,就是一个虚拟位置一样东西,比如说我自定一个名字吧,中央大学吧,纬度三十度,精度一百二十度,时区的话你就抄上面的 十区的话,这里不是有个上海吗?你就抄这个上海的,然后,呃,我们也写一下吧,这个的话就抄吧,跟上海抄一样就行,然后你就添加当然这个精度纬度啊,你不能直接随便乱写的啊,你去搜索一下,就这个网站,搜索一下 经纬度点便民啊,查询点 com。 然而你也可以自己找个随便什么网站都行啊,然后地名你就搜具体一点的,浙江大学紫金港校区或者什么什么怎么样搜索一下,然后这个经纬度复制过来,然后你保存好之后添加好了,对不对? 然后你把它叉了,叉掉,你把这个位置改成你刚刚自己搞的,这很屌哦。 对啊,我们搞完了,对不对?然后我们这里就可以开始申请了,你选完自己的学校之后,你记得开了这个虚拟位置,然后 share location, 它就会一秒一秒这个 加载完,因为你是虚拟,它马上就可以那个获取到,然后点 continue continue 之后呢,它会让你上传一个学生凭证, 他让你先让你选,你上传是哪种类型,你就选第一个 date 的 school id, 让他会让你拍照。拍照是一个非常反人类的东西,就拿着一个。呃,我之前用 windows 电脑弄的,他就直接是那个电脑的前置摄像头拍照,哎,这很诡异吧。那你就怎么样呢?你就直接拿这个学生证, 学生证打开中文的就可以,然后拍张照上传上去,然后你再点继续,如果 顺利的话,他就不会弹出来什么,就是你就那个申请成功了,如果不顺利的话,说明你的位置还有问题的话,会怎么样呢?他会弹出来让你说明你为什么不在学校,然后在网上看到一个最屌的理由,马上可以分分钟给你通过的理由就是你在另一个城市参加一个比赛,你用英文写一下,然后提交就可以了, 两分钟之后就给你也否了。我的天呐,这简直是邪气啊,大家必须学起来。 然后通过了之后,这个界面就会不一样了,下面会有那个 approve boss, 好 像是要等到三到五天之内,它才会给你陆续发放你的这个免费的福利啊。你的 compactor 不是 立刻就能用的啊,我的也还没能用呢,你要等一会儿,然后你就申请完了。我觉得这 github 的 申请真的非常麻烦, 我这个东西我是之前那个我要实习的时候,我的 mentor 跟我说的,这个东西你去申请一下,但是我一直没搞定,一直给我点奈,然后我当时好像对我来说也没什么用,我就懒得搞了,然后昨天我研究了一个下午啊,终于把它搞定了,所以必须跟大家分享一下。

如果你在三月四号之后打开过 api fox, 那 么你的密钥和密码可能已经被偷了,请立刻更新到最新版本,并替换所有凭证。不开玩笑,群里已经有小伙伴中招了,他的同事也全军覆没。那事情是这样的, api fox 桌面客户端会从网上动态加载一个 js 文件,那这个文件在 cdn 上被人篡改了, 录入的恶意代码从三月四号到二十二号,整整十八天,用过公网萨斯版桌面端的人都可能中招。那这个恶意脚本一旦触发,会读取你本地设备上的高敏感文件, s h 密钥、 key 的 账号密码,命里含历史记录等等,然后发一个和官方就差两个字母的假域名上。那这种攻击叫供应链投毒。简单解释一下供应链投毒的意思。打个比方啊,你在超市买了瓶矿泉水,大牌子包装完好你喝了, 但这瓶矿泉水出厂前就已经被人加了料,你什么都没做错,结果你挂了。那这里还有个挺搞笑的事,有人扒了这次恶意代码,发现里面全是中文注示,而且都是教学式的说明,那设计的很精巧,但是要直接写在客户端代码里, 那这是什么操作?故意的吗?那以前写个后门,好歹得是个老手,那现在开着 ai 杜尔欢就能干?而且不止 api fox, ai 开发中常用的模型调用中间件 light l a m 同一周也被供应链偷图了, open cloud 就 用了 light l a m。 如果装了代读版本,你的 s h 密钥、数据库密码、加密钱包全部会被偷走。所以大家赶紧排查那 api fox 用户,去这个路径找 level db 的 文件,搜 r m 杠 mc 或者 r o 杠 head, 搜到了就中招了。赶紧替换敏感凭证,升级 api fox 到最新版本 light lm 用户跑一下 pad, 说 light lm 版本是一点八二点七或者一点八二点八,请立刻卸载。那同样替换所有敏感凭证,那这种供应链攻击真的防不胜防,咱总不能每次去超市买水喝之前先验个毒吧? 特别是 ai 时代,以前搞供应链投图都是顶级黑客团队,现在可能一个人加一个 ai 就 能搞定。那二零二六年才过了三个月,已经有这么多项目沦陷了,下一个是谁?也许就是你每天都在用的那个工具。

怎么样把本地的代码传到远端的 github 上?首先我们得登录网页端的 github, 然后点新建仓库, 跳到新建仓库页面,写一个项目名字,因为我们上个视频讲了用 uv 怎么创建项目, uv 创建项目它是自带这些文件的,所以就不需要 github 再去帮我们创建这些了。点确定创建成功之后,会有一个这样子的地址,这个地址呢,我们可以复制下来, 回到本机,在我们的代码的那个文件夹,一打开 git bash 这个黑框,我们去输入这个命令, 这个 get remote, 关于这个命,可以看当前我们本地的这个代码,它关联了哪个远程仓库, 如果没有关联是返回的空的。然后我们就可以用 get remote id origin, 然后我们用这个命令去给它把远程的仓库关联过来。这个后面是我们刚才创建这个仓库的时候的这个地址, 这个 origin 呢就是远程仓库的一个别名。那后面我们再用 get 命令的时候,比如说这个 get push, 我 们就可以用这个人来代替这一长串的地址了。 关联之后我们就可以把代码提交到远程仓库。怎么提交呢?我们可以先 get status 去看一下它的状态,然后添加文件提交,然后再推送。基本就是这样一个逻辑,推送完去远程仓库看一下,就可以在远程看到这段代码了。

哈喽,大家好,这里是喜欢玩 ai 的 一生同学,今天给大家带来的是一期纯小白视角的 github 入门教程,在这期视频里面呢,我将分为四块内容给大家进行分享, github 到底是什么东西? github 和本地之间究竟是什么关系?它对我们普通人纯小白来说究竟有什么作用?以及最后,我们如何去借助 ai 高效的利用 github? 首先第一个问题, 它是什么?其实你可以把它想象成一个存了很多内容的百度网盘,但是有几个地方有些许区别,首先它是全世界的人都在上面放东西,而不只是国内的朋友。其次,上面的东西全部都是免费的,公开的,不需要提取码,也不需要开会员,有心意的东西直接下载下来就好了。然后它是里面存放的也不是电影音乐,而是各种代码、仓库、资料、教程和模板这一类东西。 所以你可以把 github 理解成一个全球最大的免费公开的资料共享平台,任何人都可以在上面搜索到本地。那可能就有朋友会问了, github 跟我自己电脑本地究竟什么关系呢?其实你可以这样理解, app 就是 云端,你的电脑就是本地,就好比你的百度网盘上面存放了一份文件,你可以随时把它下载到自己的电脑上面。 github 也是一样的逻辑, 区别就是百度网盘上面存放的是你自己的或者别人的私人文件,而 github 上面存放的是全球用户公开分享出来的资料,你可以随时去拿,不需要经过任何人的同意。好,接下来就要讲最重要的部分,我们普通人纯小白究竟能从 github 上面找到什么好东西,又该怎么去寻找?我将手把手的带你去完成这样一个入门体验。首先来到 github 的 界面,我给大家简单的介绍一下这些面板的作用。 左边这一块呢是你自己的仓库,里面有自己的项目和代码,中间这一块内容就是你关注的一些人,他最新的推送会放在这里。右边就是 一些 github 上面的实时热点,最主要的就是我们要讲解一下这个搜索框,其实 github 你 可以把它运成一个海鲜市场,里面只有你想象不到的,没有他搜不到的,而且所有的东西全是公开免费的,这一点非常恐怖。比如说很多同学有出国留学的打算,然后需要一些雅思的备考资料,我们可以直接在这里搜索雅思, 他就有很多的这种资料,全是公开免费的。这里有个小技巧,这个 star 数,这个星星的数量越多,其实代表着它的价值越高,越值得你去看。如果你觉得这个东西确实对你有帮助,也可以给作者一个 star, 他 会非常的感谢你。 除了英语备考资料以外,还有一些类似的简历模板,就比如这个界面有很多程序员的简历模板,还有很多 ai 视频题词的集合,里面有很多种风格的题词,大家可以直接复制去 ai 视频的官网就可以使用了。再教给大家一个小技巧, 你这里搜索 awesome, 加一个关键词或者说话题,它就能把这一类的东西的集合,基本上就能搜索出来。比如说我这里搜索了雅思的资料,它这里就有汇总的很多东西,比如说这个一点一 k 新型的雅思资料,它里面就包含了 listening, reading, writing 和 speaking, 就非常的详细,适合新手系统性的去学习这些内容。最后来讲解一个我觉得咱们纯小白最实用,最接地气的一个使用方法。因为很多仓库,比如说类似的,它全是英文啊,咱们英语基础稍微薄弱一点的朋友不友好,而且它这个文档特别多,我们就可以把这个 github 仓库的网址发给 coco 的, 比如说我这里把这一串仓库的 地址给复制下来,让他去帮我搜一搜。你好,请帮我看一下这个仓库讲的什么内容,对我有没有作用,靠扣的就会去干活 或说这些你任何的 ai 产品,只要他能搜链接的那种,他就能帮你去看一下这个仓库的具体内容是什么,然后告诉你他有没有作用,这里就出来了结果啦,他告诉我这是一个 雅思考试资源的合集,作者分享了自己取得高分的学习资源,还有很多的分析判断,就可以帮助我快速的判断这个仓库是干嘛用的,对我到底有没有帮助。如果我看 ai 的 分析之后,我觉得这个资源确实不错,想把它下载到自己的电脑上面,我也不需要自己去研究怎么操作,直接告诉 ai, 帮我把这个项目下载下来, 以后我要好好研究 ai, 就 可以帮你把这个所有的文件克隆到了你的本地,以后就非常方便你去打开 这期视频就到这里啦。总结一下, github 就是 一个全球免费公开的资料平台,不需要填写码,不需要开会员,任何人都可以免费使用。记住两个关键点,看星星,判断质量,用我怎么加话题,找精华的资源,遇到看不懂的项目,直接把链接丢给 ai, 让他帮你分析就行。如果这期视频对你有帮助的话,记得点赞收藏,我是一尘,咱们下期见。

一件刚发生的事,一个 python 库被投毒了,装上就能透光你机器上所有的密钥凭证钱包。连 carpathi 都亲自发帖警告,这个库叫 lightom github, 四万颗星,每月下载量九千五百万次,干什么用的?就一件事, 帮你统一调用各家大模型的 api。 openai cloud gemini, 用它一个接口就能全调通。三月二十四号,他在 pi 上的版本被攻击者替换了, 替换后的代码里藏了一套完整的窃取工具,只要你批派 install, 安装了一点八十二点七,或者一点八十二点八这两个版本,你的机器就开始系统性的泄露数据。它偷什么? s s h。 密钥, aws 和 g c p 和 ice 的 云凭证, kubernetis, 所有命名空间的 secret, 所有的 ev 文件,数据库密码,加密货币,钱包, s s l 私钥, c i c d 密钥,甚至你的 shell 操作历史。然后全部用 a e s 加密打包,用 r s a 公钥封装,发到攻击者控制的仿冒域名。更恐怖的是,一点八十二点八版本, 攻击者加了一个 t p e t 文件。 python 有 一个几乎没人注意的机制,放在 site packages 目录下的 p t h 文件,会在 python 解释器启动时自动执行。不需要你音炮的这个库, 不需要你调用任何函数,只要你的 python 环境装了这个版本,你跑任何 python 脚本都会在后台静默出发窃取。以前我们怎么理解软件依赖? 经典软件工程说依赖是积木,我们是在用积木盖金字塔,你用我的库,我用它的库,大家分工协助,效率极高。但这套逻辑有一个隐含前提,每块积木是可信的。这次攻击击穿的就是这个前提攻击者不是直接攻击雷特朗姆的代码仓库。他们先攻破了催尾一个漏洞扫描工具。 注意,这是一个安全工具,本来是用来保护你的垂位。被攻破后,攻击者拿到了 c i, c d 流水线里的凭证。 这些凭证又被用来偷 leitelme 的 拍 p i 发布令牌,然后攻击者直接往拍 p i 推带毒版本。整个攻击链是这样的, 安全工具被攻破。攻破安全工具拿到的凭证用来攻破 ai 工具。 ai 工具被攻破后窃取的凭证又变成下一次攻击的弹药。五天之内,同一个攻击组织 team p c p 横跨了五个生态系统, get up actions, doctor, hub, npm, open v s x 和 pi pi。 五十多个 npm 包被感染, checkmark's github action 被攻破,最终轮到 littlelam。 这不是限行攻击,这是指数级扩散,每偷一轮凭证就能解锁更多的项目。第一,你可能根本不知道自己装了 lightham。 你 pip install despise despite eli lightum 大 于等于一点六十四点零。如果你的 type 解析到了一点八十二点八,你就中招了两千多个包。 eli lightum 位子的数据显示, lightum 存在于百分之三十六的云环境中。你的依赖数有多深你看不见, 但每一层都可能被投毒。第二,攻击者只需要攻破信任链中最薄弱的一环,他们不需要找到你代码里的漏洞,不需要钓鱼你的账号,只需要攻破你依赖树深处某个维护者的 c i c d 凭证就够了。第三,被攻破后的修复成本极高, 你不能只是卸载 lightom 就 完事了。你必须假设所有凭证已经泄露,轮换所有密钥,审查所有在受影响环境中发布的产物,从已知安全的镜像重建系统。如果涉及 kuburnites, 还要排查横向扩散。第四, 发现这次攻击纯属意外,攻击者自己写了个 bug, 导致屁思文件触发了一个 fork bomb, 每次 python 启动都触发恶意代码,恶意代码又启动新的 python 进程,指数级 fork 直接把机器内存撑爆。如果没有这个 bug, 这次投毒可能好几周都不会被发现。 carpathi 说得直白, web coding 救了我们 攻击者歪不抠得了,这次攻击代码太粗糙才暴露了。 carpeasy 借这次事件重申了他的态度,他现在越来越倾向于不引入依赖,能用大模型直接生成的简单功能就让 ai 写,不要皮皮隐私到一棵你看不清楚的依赖树。这不是说所有依赖都不该用, 但他要求我们重新计算依赖的真实成本。以前我们只算开发效率,引入一个库能省多少代码,现在还要算安全风险, 你引入了多少你看不见的攻击面?对于开发者来说,几件事现在必须做锁定依赖版本用等于号,而不是大于等于号。 审计你的完整依赖链,而不只是你直接引入的包 c i c d 环境的权限要最小化,不要给构建流水线超出需要的权限。对于整个行业来说,这次攻击暴露的是一个结构性问题, 我们的依赖信任模型是上个时代设计的,但攻击手段已经是这个时代的了。最后总结,这次 lightom 投毒事件核心不是某个库有问题,而是我们整个软件依赖体系的信任模型有根本性缺陷。安全工具被攻破来攻击 ai 工具,攻击者写了个 bug 才被发现。 七十三个被盗账号,一百零二秒内发八十八条评论试图灭口。 capacity 说得对,供应链攻击是现代软件中最可怕的威胁。每次你 pick install, 你 引入的不只是代码,还有一整颗你看不见的信任树。这棵树的任何一个节点被攻破,都能递归导到你。如果你的环境有 layton, 现在就查版本。 一点八十二点六是最后一个干净的。如果装了一点八十二点七或一点八十二点八。假设所有凭证已泄露,立即。

写代码最怕什么版本乱成麻? bug 找不回,加班全白费。别慌,今天带你打通 git 和 github 的 任督二脉,从入门到实战,全是干货。首先搞清楚这哥俩是谁? git 是 本地版本管理神器,能让你像坐时光机一样,随时回到代码的任何历史状态。 hackhub 是 全球最大的代码托管平台,也就是你代码的云端硬盘。本地用 git 管,远程用 github 存,组合起来就是版本控制家协同开发的王炸。 想让它俩通信,先做三件事,第一,安装 git 官网,一键下载。第二,注册 hackhub 账号。第三,配置 ssh 密钥,就是给电脑和 hackhub 对 上暗号, 敲个命令 ssht 键,把生成的公告贴近 github, 设置里连接成功。 git 的 工作原理其实就三个区,你在文件家里改代码,这叫工作区。用 git add, 把改动挪到暂存区,这是准备提交的清单, 再用 git commit 正式存进本地仓库,一个版本就生成了。团队合作全靠分支别直接在主线搞事情。比如先建一个 dev 开发分支,再建个 xiao ming 个人分支, 你在自己分支埋头苦干,写完 add commit 后,切回 dev 分 支,用 merge 合并进去,最后 push 到 github, 提交 pr 等老大审核合并这流程专业 代码写错了咋办?别怕,没提交 git restore, 一 键撤销,提交了 git reset hard 回到过去。 如果多人改了同一行,冲突了也别慌,文件里标得清清楚楚,选哪个留哪个,删掉多余符号,重新提交,完美解决。 工作中,还有两个神迹正在写新功能,线上出 bug 了, get stash, 把进度暂存修完 bug 回来泡,恢复,无缝衔接,只想从别的分支挑一个提交过来。 get cherry pick 精准搬运指哪打啊? 这就是现代开发的必备技能,学会这套组合拳,代码管理不再难,赶紧收藏关注,需要的时候拿出来用!你还有什么? get 骚操作?评论区聊聊你点赞关注了吗?谢谢!

tapp 上有这么多优秀的开源项目,如何搬到自己的电脑上?本地的代码又如何上传到云端?和别人一起写作开发?嗨大家,如果你也想玩转 tapp, 但还不知道从何下手,欢迎查收本期视频, 我们一起来搞定 tapp 的 核心操作,走通项目的克隆仓库创建、推送、更新以及团队写作。 在正式开始之前,我们先来了解两个核心概念, git 和 gitap。 在 日常开发中,项目通常会经历多次迭代,如果你想备份不同版本,但单纯依靠复制会造成大量数据涌现,事后也难以追溯。每次的具体修改, git 就 可以完美解决这个问题。 它是一款运行在本地的分布式版本控制系统,它以时间线为轴,记录的是文件的变更历史。有了 git, 就 无需再手动保存各个迭代版本,随时能查看历史版本回溯到特定的开发节点,并直观的比对不同版本之间的差异。 而 gitap 则是基于 git 的 远程代码托管平台,能把本地的 git 仓库同步到云端,还提供了一系列强大的功能,便于团队分布式合作和开源项目管理。简单而言, git 是 版本管理工具,而 gitap 是 存放这些代码版本并进行协助的仓库。那接下来我们一起来实操一下 gitap 上的开源项目如何搬到本地电脑上这个操作。在 gitap 上的搜索框搜索并进入一个你感兴趣的项目。 在项目页的右上方有两个按钮, app file 用于上传文件, code 则是下载整个项目到本地的入口,点击它会看到多种克隆方式,通过 http 协议传输。如果你只是想下载别人的开源项目学习查看,不涉及频繁的代码提交,操作时可以选择这个比较新手友好。 通过 s s h 协议安全传输,需要在电脑上配置 s s h p。 如果你需要频繁地向仓库推送代码,建议选这个是更便捷安全的方式。 excel c l i 需要安装 excel 官方的 g h 工具。 最下方的 download zip 则是直接把项目打包成压缩包下载,它不会附带任何 keep 历史记录,也无法远程仓库同步更新。如果你只是想一次性获取原码,不打算后续跟踪或提早改动时,可以使用该方式。 那么接下来根据你的需求复制对应的链接。因为我演示的是拉取自己的项目,后续会反复推送代码,所以我选择 s s h。 打开电脑的终端,进入你存放项目的文件夹,输入 git clone, 再粘贴刚才复制的链接,这就是一条完整的克隆指令。回车执行后, git 就 会自动把原端的项目下载到本地,生成一个完整的 git 仓库,并且会自动配置远程跟踪指向你克隆的那个 git 仓库。 那如果情况反过来,我们在本地写了一个新项目,想把它传到 tiktok 上,又该怎么操作呢?分为两步,先在 tiktok 上新建仓库,再把本地的项目代码搬进去。登录 tiktok, 点击右上角加号,选择 new repository, 给你的项目起个名字,按需更改配置, 点击底部的 create repository, 这时 tiktok 会给你生成一个全新的仓库地址,同样有 h t t p s 和 s s h 链接,复制备用。 第二步,在本地初识化并关联仓库,回到你的电脑,在本地项目文件夹里打开终端。因为此时这个文件夹还只是个普通文件夹,不是一个 git 仓库, 所以我们要先敲一行指令, git git 这个指令会在当前目录创建一个隐藏的点 git 文件夹,相当于让 git 开始正式接管这个项目。接着我们再输入 git remote add origin 加刚才复制的仓库。链接回车,本地项目就和远程仓库成功牵手关联了。 将开源项目克隆下来或者创建了自己的项目后,我们会继续在本地改代码。修改完之后,又如何把自己最新的改动同步到 git 上呢?这主要涉及到 git 的 三个核心命令, git commit 和 git push。 当你修改了本地文件后,这些改动还只是停留在你的工作区。我们输入 git 点 git 命令就是把你的文件修改从工作区添加到暂存区,后面的内容代表当前目录下的所有更改。 那如果你输入 git commit, 就 代表着只上传 commit 这一个文件。执行完这步,可以看到文件就进入了暂存的更改中。当所有准备提交的修改都通过 git commit 进入暂存区后,我们输入 git commit 杠 m 加双引号提交说明。 git commit 命令就是把暂存区里的这些修改打包保存为一个新的版本。快照 后面的杠 m 提交说明代表了你对这个版本的备注,这个说明是能在 get up 中直接被看见的。这个清晰的标签能让你或者团队成员快速了解这个版本具体做了什么改动。可以看到,在执行完 get commit 后,你的本地仓库就多了一个版本记录。现在你的新版本已经保存在本地 get 仓库里了, 接下来需要上传到 guitar 上。如果是第一次推送项目,我们输入 get push 杠 you origin man。 get push 就是 执行推送动作,把本地的代码变更推送到远程仓库。杠 you origin man 其实是在日录, 就是告诉 git 把当前代码推送到名为 origin 的 远程仓库的 main 分 支上去,并建立本地分支与远程分支的跟踪关系。有了这次跟踪关系之后的每次推送就只需要简单的输入 git push 就 可以了。可以看到,当 git push 成功执行后,代码就同步到了 gitap 上,其他人也能看到你的最新贡献了。 如果你只是想管理个人项目,那上面讲的指令基本就够用了。但当你和团队一起开发一个项目时,如何高效写作就成了关键。核心就是先和线上的最新代码保持同步,然后再提交自己的修改。为了避免代码,大家每次修改代码前都建议先执行 github, 他会把远程仓库里最新的代码更新拉取下来,并和你的本地代码合并。但即便如此,也会遇到这种情况。你正在本地埋头开发,解完准备 git pull 时, git 却报错拒绝推送。因为线上的代码刚刚被队友更新了,你的版本落后于线上, 这个时候就需要先拉取最新代码并解决冲突。 git 提供了两种主流的合并策略, merge 和 rebase。 git 会尝试把线上的最新代码和你的本地代码强行汇合在一起。 如果遇到冲突的地方, git 会暂停自动合并流程,需要你手动修改代码,进行人工裁决。冲突修改好后,执行 git commit。 git 会自动生成一个新的合并记录,把两边连起来。策略二, rebase 执行 gitp 杠杠 rebase git 会先把你的本地修改暂时摘下来,把线上的最新代码拉取下来作为新地基,再把你的修改接到最新代码的后面。 同样出现冲突的地方, git 会暂停当前的 rebate 流程,需要你人工裁决。冲突修改好后执行 git rebate 杠杠 continue, 告诉 git 继续后续合并。 这种方式不会产生多余的合并节点,能保持提交力,是比较整洁成一条干净的直线,所以更加推荐用这种方式。此外,如果你不需要合并整个分支的所有代码或者有代码冲突,可以执行 git cherry pick commit, 它能像摘樱桃一样精准复制某次特定的提交,然后粘贴到你当前的分支上。这种方式就比较灵活,也能有效避免合并整个分支带来的大量代码冲突。 无论选择哪种策略,冲突解决完毕且合并完成,我们就可以再次成功的执行 git push, 把代码推送到线上仓库了。天赋锁线这期视频主要是过了一遍 git 和其他比较基础的操作, 如果是刚开始接触实操的时候,可能还是会遇到各种问题,可以多问 ai, 而且主流代码编辑器都内置了直观的 git 图形化界面,深度融合的 ai 功能,可以通过鼠标点击来完成代码的暂存提交,或者直接用自然语言交互。有了这些强大工具的加持,上手 git 就 变得更加简单了。 好啦,那以上就是本期视频的全部内容,如果对你有帮助,别忘了点赞、收藏、关注我们下期视频见,拜拜!
![Claude Code今年爆了两个漏洞 但最大的漏洞是你 Claude Code今年被爆了两个严重漏洞。修了。
但最大的漏洞修不了——你每次都点允许。
你允许它读SSH密钥、AWS凭据、env里所有密码,还能用curl往外发数据。一天按几十次OK,根本不看内容,这叫"确认疲劳",本身就是安全漏洞。
完整JSON在下面,复制粘贴就行。
{
"permissions": {
"allow": [
"Bash(npm run *)",
"Bash(npm test *)",
"Bash(npx prettier *)",
"Bash(npx eslint *)",
"Bash(git status)",
"Bash(git diff *)",
"Bash(git log *)",
"Bash(git commit *)",
"Bash(ls *)",
"Bash(cat *)",
"Bash(grep *)"
],
"deny": [
"Read(~/.ssh/**)",
"Read(~/.gnupg/**)",
"Read(~/.aws/**)",
"Read(~/.azure/**)",
"Read(~/.kube/**)",
"Read(~/.npmrc)",
"Read(~/.git-credentials)",
"Read(~/.config/gh/**)",
"Edit(~/.bashrc)",
"Edit(~/.zshrc)",
"Bash(curl *)",
"Bash(wget *)",
"Bash(nc *)",
"Bash(ssh *)",
"Bash(git push *)",
"Read(*.env)",
"Read(.env.*)"
]
},
"enableAllProjectMcpServers": false,
"sandbox": {
"filesystem": {
"denyRead": ["./.env", "./.env.*"]
}
}
}
#ClaudeCode #AI编程 #程序员 #AI安全 #编程](https://p3-pc-sign.douyinpic.com/image-cut-tos-priv/6aec6891fd1c3e6df0a8bbe8f61366a2~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2091276000&x-signature=eowu2qGCAWdMIxSUz4xf4tYNiKM%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=202604112200500BF2067719DF281B7833)
coco code 今年被爆出两个严重安全漏洞,补了,但最大的漏洞补不了。你每次都点允许 你,允许他读你的 s s h 密钥 a w s 频据 ev 里所有密码还能用,可往外放,怎么办?三步搞定。第一,开沙盒, 一条命令, ai 只能碰当前文件夹,百分之八十四的弹窗直接没了。第二,锁死敏感目录 s s h 密钥 a w s 屏具 n g v 配置全部禁读, ai 连看都看不了。第三, 断网, curl wagged n c 全左断,就算 ai 被骗了,数据也发不出去。这只是七条里最重要的三条,完整接收评论区复制粘贴就行,设置好了打一。

今天介绍一个网站,上面放着全世界最聪明的人写的代码,并且免费给你用,它就是 gitlab。 很多人以为 gitlab 是 程序员采用的,其实并不是,你可以把它理解 为全球最大的免费资源库加技术社区。在这上面你可以找到火爆的 ai 换脸软件,声音克隆软件,视频下载工具、直播录屏工具,也有别人整理好的大厂入职的面试指南,全套的电子书资源,英语课程、编程课程 等,全部都是开源免费的。如果你是第一次打开这个网站,不要被这个全英文的界面所吓退。 我们可以在浏览器里安装一个插件,我用的是沉浸式翻译。如何在海量的资源中寻找到我们所需要的项目呢?今天分享一下我的方法,仅供大家参考。比如我们要去找声音克隆的软件,我们可以直接把问题丢丢给 jimmy 或者切的 gpt, 让他们帮我们去找。 simon 一 共帮我们找到了五款声音克隆的软件,以及它们的功能介绍。 以这个 gpt service 为例,我们直接点击这个下载地址,进入项目页面,往下拉,找到这个 readme。 这里是这个项目的介绍,他会教你如何去安装,怎么运行,怎么配置,以及在使用过程中的注意事项,能帮你快速判断这个项目值不值得去用。 右上方这个瑞丽斯是项目最新版本发布的地方,在这里你可以查看新增了什么功能,修复了哪些 bug, 有 哪些改动。这里就是这个项目需要下载的压缩包。 新手在第一次安装的时候可能会遇到许多问题,以及出现各种各样的报错,这个时候不要慌,记得把你的问题丢给 jimmy 或者切的 gpt, 他 们会帮你解决好的。

hello, 大家好,今天我想给大家带来 github 呃规划化的操作流程,其实我相信大家如果在第一次接触 github 的 时候,可能会被它的很复杂的一个用法绕晕了头脑, 其实我今天就想给大家让大家理解 github 它的一个底层逻辑。其实首先的话我们要理解,其实 github 它的一个很多的一个设计都是为了它的一个 main 主分支来围绕开展的。 我们其实只要牢记一点,其实它的主分支是处于一个保护状态的,它只存放于稳定的代码,就是你不能随便在上面修改。 嗯,那我们一个正常的一个操作流程是什么样一个流程呢?首先第一点的话,我们首先要把这个最新版的这个代码从 main 分 支上面给它下载到到我们的一个本地,然后我们在本地之后呢, 我们也不是说直接在这个 main 分 支上面去改的,因为我们也知道 main 分 支它一般都是储存稳定的代码,而就说我们把这个下载到本地之后,我在这个基础上新建复制,新建一个本地的分支,你可以给它任何的一个命名,像我这里命名叫 alio, 然后我们真正要修改代码的时候,其实是在 alio 这个分支代码上面进行修改的,我们在这里修改之后, 如果你觉得代码无没有问题,你就可以直接 commit, 这就是我们经常提的这个提交。但我们要注意这里的提交的话,它其实并不是说直接提提交到远程的 github 上面,而是说它的 commit 只是说把你这个保存到你这个电脑上面, 还没有推送到远程,然后第四步这才到了我们如果你觉得这个没有问题之后,你就可以把你这个本地的代码 推送到远程,这样的话你的同事或者说你的团队成员,他们在呃远程的 github 上就可以下载到你的一个代码。然后第五步的话是申请合并。为什么要有申请合并这个步骤?其实也是围绕 main 分 支,你是不能随便他们改的, 而是说我们要把我们的本地的这个分支推送到远程之后,然后请求合并。如果团队项目负责人他看完你这个代码没有问题之后,他再把你的修改加到我的一个最终的一个 主干分支里面去,所以说它是这样的一个底层逻辑。然后我也给大家画了一张这个图,呃,让大家形象的一个理解, 就我们我们要有这样的一个意识,其实它包括我之前也是经常容易搞混,就是它其实会有三个层次的一个工作层。第一个远程就我们在 github 上面,我们经常看到的,我们可以看到很多人上传的一个代码, 就是你可以理解成它是一个公共的一个保险箱,它的特点是什么?特点是存放一些正式的代码,然后也可以帮家帮助大家,呃,团队协助。然后第二个层级的话,就是我们的一个本地的一个保险箱, 本地一个保险箱的话,它有点类似于就是说你存放的,哎,我这个代码我觉得我写的差不多了,然后不需要改了,哎,我就把它正式的 commit 提交到这个保险箱里面。然后第三个层级的话,那就是我们每天在实时修改代码那样的一个层就是我们的一个草稿区,它的特点就是乱糟糟,你可能随时都在改, 那其实它的一个呃 github 它的一个操作逻辑就跟右边这张图是一样的。首先我们第一步的话,我们是需要把远程就我们在网页上面, github 上面它的一个 main 分 支给首先给它拉取下载到我们这个本地,然后我们在本地也不是说直接在这 main 上改,而是说去复制它去新建一个本地一个分支,打比方我是新建一个本地一个分支,打比方我再在 alex 这个分支上进行一些代码的一个修改, 然后我如果觉得这个修改的差不多,然后可以保存的时候我就 commit, 但是我们要注意这 commit 时不是说直接推到远程,说保存到我们本地这个保险箱, 然后你保存到本地保险箱之后,你再提交一个这样一个推送 push, push 到我们这个远程,这个时候才真正的到我们远程的 get up 上面去。然后我们也注意说你这个最后如果要合并的话,也不是说你直接推送到这个 主干分子,就是说你要提交这样的一个申请,合并这样一个请求,这就是我们经常提的这样 pr, 如果项目负责人他觉得你这个代码没有错,他就会最终把你的代码合并到我们的一个主干分子里面去。然后这个其实就是 github 的 一个合作,一个底层逻辑,然后希望能够帮助到大家。