git/github 资源使用篇
访问 github
Git 和 Github 是什么?
至于为什么放在第二部分 能进的自然能进的 不能进的可能是想进但进不去卡在第一步 所以emm 这个介绍其实可有可无 懂得都懂
——程序员的神器 学会使用这个 大部分技术问题都可以得到解决 在做大项目时也能有更好的思路 让你敲代码这件事更规范化(看上去很专业) 到了工作也是离不开 git 和 github 的 所以早点学会 让自己更具核心竞争力
git
一个运行在本地电脑上的版本控制软件 在写文档的时候 经常写错 可以使用 ctrl+z 进行一个撤销操作 其实写代码的时候也常常碰到一系列的反悔 git 就是一个记录代码某时刻状态的工具 以保障反悔时可以回滚到当时版本
概念一:commit 这个概念在数据库的事务中有遇到过 对 一个道理 代码以 commit 作为单位保存 在 commit 之前 回滚则会返回上一次 commit 处
概念二:repository 仓库 写代码时总有一个代码库(文件夹) 这个文件夹一般是根目录 如果初始化上个 git 那么这个文件夹就变成了一个仓库 仓库中对应的代码的变更 就会被 git 给控制记录下来 每次提交也都是针对这个仓库进行的
概念三:branch 分支 根据不同的人 不同的需求 在当前代码中开辟不同的分支 大家各写各的 互不影响 最后再合并起来 达成一个分工协作的效果 是不是有了点写大程序的影子
小游戏学习 git 代码托管 https://learngitbranching.js.org/?locale=zh_CN
一些错误的解决方法
git的下载
git图形化界面下载
Github
git 是本地的 那多个项目的开发者或者多个功能的实现者 不可能都在一台电脑上去进行操作 github 就可以让我们把这个仓库存在网站上 大家都可以在这个网站上去取代码 写好的代码都往这个网站上去存 分支也放在网站上 提交也是 从而实现一个共享 合作的功能
然后还有一个点就是 这个网站可以免费提供公共仓库 也就是说如果你开源 你的代码就能免费放在这个网站上供所有人“借用” 但如果想享受这个服务 又不希望开源 就需要花钱购买私有仓库
那么!!!既然有大佬开源把代码供我们“借鉴” 我们就应该学学怎么去借鉴吧
怎么用
简单入门使用 github 学习大佬代码 这个视频里面教程了如何将大佬的代码直接下载到本地 以及使用账号收藏进行一个软下载
创建一个想要保存的位置的文件夹 右键 Git Bash Here
将要拷贝的项目的代码的地址拷贝下来
在弹出的界面中 输入 git clone 地址粘贴上去
回车 相应代码就会下载在文件夹中了 而后可以右键选择在 vscode 中打开
一些学习技巧
可在此处查看收藏过的项目
README.md
放着作者对项目的一些介绍,讲解,使用方法 .md 是一种 Markdown 语法 类似于 txt docx 它要比 word 简单很多 而且可读性很强 可以配套 Typora 去使用 在 github 上几乎绕不开 .md 文档
LICENSE
搬运时(用于商业等其他用途时)如果是 MIT 那就说明 只要保留了原作者的一些版权信息 就能无限制的使用
倘若不是 MIT 或者 Apache 而是一些奇奇怪怪的协议 就需要注意一下版权问题了 否则会引起一系列官司和纠纷
回到 git 的三个概念 其实也能相应在 github 上找到
提交
可以点击这里去查看历史的更改 这对于学习也是很有帮助的 如果要追踪一个很老的项目 也可以看到它第一天初始化的过程 然后慢慢跟着这个项目 不断发展做大 就能从中学到 一个成熟的工程师是如何构建一个项目的
仓库
对于这样一个页面其实就是一个仓库
分支
可在此处查看该项目的分支 不同分支表示不同功能 到最终都会合并到 main 中
issues
其实就是一个讨论区 open 是还没解决的 close 是已经解决的 自己也可以去提出问题 到了这里 几乎可以在 github 中畅通无阻了
寻找资源
光是没事在 github 上逛逛还是信息比较闭塞的 如果有一些推送 自卖自夸的网站给我推荐就好了
github 内部的一个热门榜
以刊物形式 分享有趣的开源程序
知乎中
关于前端的一些资料
另外一些在 github 搜索的小技巧 可以在搜索某领域时
- 加上 awesome 关键字 (极好的)(一般人不敢加懂得都懂) awesome XXX
- 或者加上 sample 关键字找例子 XXX sample
- 找空项目架子: XXX starter/xxx boilerplate
- 找教程: XXX tutorial
鱼皮——快速发现优秀开源项目的三板斧
GitHub 是程序界人尽皆知的代码开源平台。 在这里,每天有无数个新项目产生,有数亿行代码被提交。那么如何从海量的项目中大浪淘沙,快速发现那些优秀的或者极具潜力的开源项目呢?
最简单常用的方法,直接在 GitHub 搜索项目,然后排序和数星星,star 数越多,表示项目越受欢迎,通常也越优秀。
对于技术爱好者或者技术推荐博主来说,当然希望能够随时了解 GitHub 上的优秀项目和那些有潜力的项目,而不需要靠自己输入关键词来获取。
下面送给大家一把三板斧,助你快速发现优秀开源的项目!
- GitHub Trending
官方提供的项目趋势统计,能够看到一段时间内项目和开发者新增 star 数的排行。还支持选择语言、编程语言及时间范围。适于发现最新的有潜力的项目。
地址:https://github.com/trending
查看今日项目新增 star 数排行
- Gitstar Ranking
非官方的 GitHub 排行榜,按照 star 数进行排序,支持个人、组织和项目排行。能够发现成熟又活跃的优秀项目。
查看个人、组织和项目排行
- Awesome Topic
Awesome 项目是指由社区同学共同贡献而成的项目,包含了某一技术的完整生态(如优秀开源项目、类库、工具、知识点)。比如
建议大家多看 awesome 项目,学习和查漏补缺都是极好的~随着 Awesome 项目越来越多,GitHub 成立了 Awesome Topic 专区,在专区内,我们可以快速发现各种 Awesome 项目,进而发现不同编程语言或技术的优秀开源项目。
以上就是快速发现优秀开源项目的三板斧,大家可以多关注开源项目,拥抱开源,提升自己的编程水平。
github 骚操作
可以在 GitHub 上搜索和阅读项目代码,进行学习;或者复制粘贴,从而快速完成自己的项目。
对于 github 大多数时候仅仅是局限于 “能用”,这里有 GitHub 的几个隐藏的神级技巧
1. 搜索技巧
搜索无疑是大家使用最多的功能,绝大多数同学是这样搜索的:点下搜索框,输入想搜的内容,然后往往会看到一大堆搜索结果,接下来还要再去选择编程语言来过滤。结果还是一大堆!不仅麻烦,而且搜索出来的内容可能非常老旧。
而有经验的大佬呢,可能是这么搜的:按快捷键 s 直接聚焦到搜索框,然后输入一串神秘代码:springboot vue stars:>1000 pushed:>2022-05-02 language:Java,再按回车搜索,就能轻松快速地得到精确的、最新的结果。
怎么样,搜出来的项目是不是都挺经典的?这一串神秘代码呢,其实是利用了 GitHub 高级搜索功能提供的搜索限定符。
当然,完全不用记这些,进入 advance search 界面(搜索结果页左下角),利用可视化表单也能实现高级搜索:
比如搜索最近更新的、Java 语言的、star 数超过 1000 的项目:
但这个界面展示的搜索条件有限,其实还有更多的搜索限定语法,比如按代码库名称、描述搜索,对仓库中的内容进行搜索等,这些都可以在 GitHub 官方文档查阅,不用去背!
2. 文件查看技巧
在我们发现开源项目后,往往要进入项目详情页,通过查看文件和阅读源码来了解项目。相信大多数同学是一级一级的点击项目目录去找文件,发现位置错了后呢,还要回到最初的起点,呆呆地再换一个目录去找。对于 java 这种包路径层层嵌套的项目来说,实在是太麻烦了。
其实,我们只需按下 t 键,就可以快速、实时地对仓库内的所有文件进行搜索了。
点进某个文件后,还有技巧,按下 L 键,就可以快速跳转到某一行。点击行号,就可以快速复制这行的代码,生成永久链接。
按 b 键还可以快速查看该文件的改动记录。是不是方便很多了呢?
查看尤大开发 vue 的过程
除了上面这些,其实 GitHub 里还隐藏了非常多的快捷键,大家可以收藏一下,也可以在官方文档查看。
除了快捷键,GitHub 其实还藏着一个命令面板,按 ctrl + k 打开,然后就可以快速查看内容,高效执行各种操作了,感兴趣的同学依然可以从官方文档去了解,这里不再赘述。
3. 阅读代码技巧
虽然通过上个技巧,我们已经能够很方便地搜索文件了,但是如果要完整阅读项目代码,可能要在文件间来回跳转,就非常麻烦。所以我们往往会把项目代码下载到本地,用更强大的编辑器来阅读。但是,在我们调研和选择项目时,有那么多我们不了解的项目,难道都要一个个下载到本地去阅读么?
当然不用!登录 GitHub 后,直接在仓库详情页按下 .(句号)键,神奇的事情发生了,你会发现,代码竟然直接在一个网页版 VS Code 编辑器中打开了!
VS Code,但是网页版使用体验和本地的 VS Code 编辑器完全一致,不仅可以随时切换文件来阅读,代码高亮提示、快捷跳转、代码搜索、debug 等功能一应俱全,甚至还可以安装插件来增强编辑器的功能。谁用谁真香~
4. 在线运行项目
除了一键在浏览器中查看项目源码外,GitHub 还藏着一个更 无敌 的功能。让我们在项目地址前加上 gitpod.io/# 前缀,等待几秒钟,神奇的事情发生了。依托于 GitPod,我们不仅在一个网页编辑器中打开了项目代码、可以实时编辑和保存;而且它自动识别了项目的类型,并且自动安装了依赖包。
接下来,我们完全可以把这个网页提供的远程服务器当做自己的电脑来使用,里面预装了 python、java、go 等等,啥环境都有!因此我们可以在控制台里为所欲为:可以输入命令来执行项目,并且直接在网页中查看项目的运行效果;甚至还可以一键构建 Docker 镜像,快的飞起!
这下再也不用把项目下载到本地,然后安装一堆环境来查看项目效果了。没记错的话,GitPod 每月提供 50 个小时的免费使用时长,对绝大多数同学来说完全足够了。
5. 项目推送
除了主动搜索项目外,其实在 GitHub 的 Explorer 探索页面中,有一个非常不起眼的按钮 —— 获取邮件更新。我们可以根据自己的喜好,让 GitHub 定期给我们推送自己感兴趣的优质项目,就可以持续扩大知识面、了解开源动态啦。
特别鸣谢!!!!!
【Github 新手够用指南 | 全程演示&个人找项目技巧放送】 https://www.bilibili.com/video/BV1e541137Tc?vd_source=f90b3e1fec7a29aa578bf2c42517c160
这篇笔记几乎出于这个视频 非常的良心 受益匪浅 可能后续还要补充一下怎么去使用 git 以及它的图形化界面
【40 分钟学会 Git | 日常开发全程大放送&搭配Github】 https://www.bilibili.com/video/BV1db4y1d79C?vd_source=f90b3e1fec7a29aa578bf2c42517c160
有时间了再来整理 在大学时期一般用不上这种工程化的工具 先愉快的在 github 上玩耍吧!!!
然后 最主要的东西 …学好英语…不然看不懂 怪不得说英语决定下限…
项目分区导航:git与github项目管理篇 ⬅️ | 06-git-github资源使用篇 | ➡️ 贡献代码到开源项目从Fork到PR
💬 评论