当前位置:   article > 正文

我是怎么自学 Git / GitHub 的?

鱼皮 github

大家好我是鱼皮,Git 和 GitHub 是如今团队协作开发必不可少的技能,且不说程序员,就连很多产品也在学习它们。今天分享一下我自学 Git 和 GitHub 的经验,希望起到一个 导学 的作用,帮助大家抓住重点,节省时间、更高效地自学。

本文大纲:

  • Git(GitHub)是什么?有什么用?

  • 为什么要学?

  • 什么时候学?

  • 要学什么知识?哪些是重点?

  • 怎么学?有哪些方法和资源?

  • 以及面试的时候可能会考什么?

Git / GitHub 是什么?有什么用?

Git 是目前 最主流的 分布式版本控制系统 ,版本控制系统可以帮你保存文件的所有修改记录、并使用 版本号 进行区分。你可以随时浏览历史版本、将改错的文件还原到指定的版本,还可以对比不同版本的文件差异、防止旧版本覆盖新版本等。起到恢复和保护作用。而 分布式 是指每位开发者都能在本地维护自己的代码和修改记录,并且还能和其他人的记录进行同步。

GtiHub 是主流的 代码托管平台 ,可以理解为一个存放和管理代码的 “网盘”,大家可以把自己的代码传上去进行共享和维护,也可以从平台下载代码。

7ad6296816460ff407a195a2bf1f2d76.png

注意不要把二者搞混!

Git 是工具(是抓手),而 GitHub 是平台。两者没有必然的联系,我们也可以用其他工具来向 GitHub 提交代码,也可以用 Git 向其他平台提交代码。

为什么要用 Git / GitHub?

Git 从最开始就是 Linux 之父为了更好地管理 Linux 内核开发而创立的。

试想一下,假如有 100 个人一起来开发大型项目,怎么才能保证大家的代码不重复,又能共享呢?难道把代码放到 U 盘里拷来拷去,或者口口相传说:我今天要改这个文件,其他人都别动?

肯定不行!

所以分布式版本控制系统和代码托管平台出现了。大家可以把项目代码放到代码托管平台上,每个人都从上面下载代码,然后在自己的电脑改代码、维护自己的版本,最后在发布前,把大家不同版本的代码合到一起,再上传到平台就可以了,非常方便高效。

公司为了安全,一般都会有自己的代码托管平台。而 GitHub 呢,是 开源的 ,相当于世界上所有人都是同一家公司的员工,大家都能共享这上面的代码、免费学习和参与知名项目。

6319d9c23b9224c271e3b15bda57ffdc.png

为什么要学它?

它们就是为协作开发而生的。因此,大多数公司都在用它们来管理项目。所以只要我们想找工作,就不得不学。

我之前看到一些段子说:程序员入职新公司第一天,不会 git 被开除了。也能反映出来 Git 真的很重要!

什么时候学?

记住两个时间点就够了:

  1. 学过至少一门编程语言后

  2. 准备开发个人项目前

这样你就可以把之后做的所有项目都放到 Github 去管理,维护自己的项目仓库。

Git / GitHub 学习重点和方法

我把 Git 的学习分为四个阶段:

一、Git 基础

本阶段目标
  1. 了解 Git 基本概念和常用命令的作用(理论)

  2. 能够使用 Git 命令来管理和提交项目代码,要走一遍完整的流程(实践)

学习方法

推荐《猴子都能懂的 Git 入门教程》。它是免费的,图文并茂、通俗易懂,花 1 小时看完 入门篇 就足够了。

1cf9c4cbd01166f1c60671f2706e270e.png

在学习时,大家一定要跟着教程多敲命令 ,要自己走完从新建文件到提交文件的完整流程。以实际操作为主,而不要去背那些命令。因为其实我们是可以用开发工具或者软件来可视化地操作 Git 的、而且哪怕忘了命令也可以查,所以死记硬背没有意义。

分支是 Git 里很重要的概念,大家可以使用 Learning Git Branching 这个在线游戏来学习和理解分支。

猴子都能懂的 Git 入门教程:https://backlog.com/git-tutorial/cn/

Learning Git Branching:https://learngitbranching.js.org/?locale=zh_CN

二、GitHub 基础

首次接触 GitHub 时,你就把它当成一个资源网站,在搜索框里输入你想搜的东西就可以了,不需要任何的教程。

但是如果我们想上传代码到 GitHub、和他人协作,就得好好学习一下了。

目标
  1. 熟悉 GitHub 基本操作,并能够使用它来管理代码

  2. 了解如何利用 GitHub 搜索和下载项目代码

  3. 最重要的。了解 GitHub 协作流程;了解开源,并能向开源项目提交代码

知识点
  • ⭐️ 基本概念

    • 什么是 Git(版本控制系统)

    • 什么是 GitHub(代码托管平台)

    • Git 和 GitHub 的作用

    • Git 和 GitHub 的联系与区别

  • ⭐️ Git 概念

    • 工作区

    • 暂存区(索引)

    • 本地版本库

    • 远程仓库

    • Git 文件状态

    • 版本

    • HEAD

    • 分支

  • Git 的安装

  • Git 常见配置(git config)

    • 个人信息

    • 修改配置

    • 查看配置

  • ⭐️ Git 基本操作(开发流程)

    • 初始化仓库(git init)

    • 克隆(git clone)

    • 暂存(git add)

    • 提交(git commit)

    • 推送(git push)

    • 拉取(git fetch)

    • 拉取合并(git pull)

    • 声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/577577?site
推荐阅读
相关标签