使用 Git&GitHub 的前期准备

本文指导如何设置SSH密钥、创建GitHub仓库、克隆和提交代码,包括设置SSHKey、添加公钥、创建仓库、以及使用Git的基本操作,强调了开源和代码管理的重要性。

使用GitHub的前期准备

本节包含 SSh Key 的设置,从 GitHub 上创建一个仓库,并 clone 到本地,然后对其进行更改,提交,同步到仓库。需要已经下载好了 Git ,并且已经创建了一个 GitHub 账户

1. 设置 SSH Key

1.1 创建 SSH Key

# "your_email@wxample.com" 是填写你的邮箱
$ ssh-keygen -t rsa -C "your_email@example.com"

运行这条命令,然后直接敲两次回车就可以。第一次回车是将 SSH 密匙存放在默认的路径下,第二次是跳过设置密码。(当然,可以设置密码,但是设置密码之后每次都需要登录验证,初期学习的时候没必要设置密码。注意,注意,注意:如果没有设置密码,别人就可以通过 SSH 来修改你仓库的文件代码,不需要验证

完成上述之后,你会在指定路径下看见两个文件,默认的名称是id_rsa(私有密匙)和id_rsa.pub(公开密匙),如果不是默认名称,需要注意一下

1.2 查看密匙

# 如果名称不是默认名称id_rsa.pub,那就换成实际的名称
$ cat ~/.ssh/id_rsa.pub

1.3 在GitHub中添加公开密匙

注意,添加的是公开密匙

通过1.2的操作将密匙复制,在GitHub界面点击自己的头像,然后点击Settings,在左侧找到SSH and GPH keys单击,在SSH keys下找到New SSH keys单击,进入Add new SSH key界面,设置title(随便设置就,可以设为电脑的名称),然后将复制的公开密匙粘贴到Key中,点击Add SSH key

添加成功之后,创建账户时所用的邮箱会接到一封提示“公共密钥添加完成”的邮件。

完成以上设置后,就可以用手中的私人密钥与 GitHub 进行认证和通信了:

$ ssh -T git@github.com
Hi hello-world-tmd! You've successfully authenticated, but GitHub does not provide shell access.

运行如上的命令,出现上面的结果即为成功

2. 实际动手使用GitHub

2.1 创建仓库

在GitHub界面单击 + 号,然后单击New repository

在这里插入图片描述

然后会进入如下的界面:

在这里插入图片描述

  • Repository name *: 设置新建仓库的名称(必填),此处填写的为git
  • Description (optional): 对仓库进行说明描述(选填)
  • Public、Private:公开仓库(所有内容都会公开)、私有仓库(指定用户才能访问,收费
  • Add a README file: 创建一个 README.md 文件,可用于写仓库的说明文档,建议选中
  • Add .gitignore: 添加一个 .gitignore 文件,把不需要在 Git 仓库中进行版本控制的文件记录在 .gitignore 文件中(不了解可以先不选择)
  • Choose a license: 选择要添加的许可协议文件,告诉别人你的代码可以在哪写场合(商业、学习)可以怎么使用(免费、加上引用、联系作者)。开源更应该注意版权,不要随意用别人的代码进行商业用途,除非别人的license中许可,或者征求了别人的同意

2.2 连接仓库

刚创建的仓库链接(我这里在创建 SSH Key 的时候没有设置密码,所以,这个仓库你也可以通过下面的方法,对其进行更改,前期自己学习的时候为了方便可以不设置,但真正要写重要的仓库的时候还是要设置密码的)

  • README.md

    如果刚刚选中Add a README file,那么README.md文件在初始化的时候已经生成好了。README.md 文件的内容会自动显示在仓库的首页当中。因此,人们一般会在这个文件中标明本仓库所包含的软件的概要、使用流程、许可协议等信息。一般使用的是Markdown语法,这个语法很简单,一个小时左右就可以学会。但是掌握这种语法很重要,程序员必备了。本篇笔记就是用 Markdown 语法写的。

  • GitHub Flavored Markdown

    GitHub Flavored Markdown 语法是 GitHub 在 Markdown 语法基础上扩充而来的,但一般情况下只要按照原本的 Markdown 语法进行描述就可以。在 GitHub 上进行交流时用到的 Issue、评论、WiKi,都可以用 GitHub Flavored Markdown 语法表述,从而进行标记。

  • 公开代码

    • clone 已有仓库:

      在 GitHub 中进入该仓库,然后单机 Code 找到 SSH 然后复制下来:

      在这里插入图片描述

      然后新建一个文件夹(此处设为 floder),右键然后单机 Open Git Bash here,就会打开 Git Bash 窗口,路径为该文件夹的路径,输入命令(带 $ 的行是命令代码,没有的是输出):

      $ git clone git@github.com:hello-world-tmd/git.git
      Cloning into 'git'...
      remote: Enumerating objects: 3, done.
      remote: Counting objects: 100% (3/3), done.
      remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
      Receiving objects: 100% (3/3), done.
      

      若当时设置了密码,则此处回车后会要求输入密码,出现上面的结果,就是运行成功,仓库被 clone 到文件夹 floder 中的仓库名文件夹中,即 floder/git (当时设置的仓库名为 git

    • 编写代码

      在 Git Bash 中输入一下命令:

      # 进入 git 文件夹中
      cd git
      # 新建一个 hello-world.py 文件
      touch hello-world.py
      # 用编辑器打开 hello-world.py 文件
      code hello-world.py
      

      这里解释一下 code hello-world.py 命令:用 VScode 打开 hello-world.py 文件。code 是 git 设定的编辑器,如果你在下载git 前就已经下载了 VSCode 编辑器,那第三行命令应该不会报错,如果出现报错 bash: code: command not found,请你手动打开 hello-world.py 文件,进行编辑。

      打开 hello-world.py 文件后输入一下代码:

      # 2023年12月25日20:11:26
      
      print("Hello, world!")
      

      然后保存并关闭编辑器,在 Git Bash 中运行一下命令:

      $ git status
      On branch main
      Your branch is up to date with 'origin/main'.
      
      Untracked files:
        (use "git add <file>..." to include in what will be committed)
              hello-world.py
      
      nothing added to commit but untracked files present (use "git add" to track)
      
    • 提交

      下面会后一些不熟悉的名词和命令,先不用管它,后面都会再讲到的

      由于 hello-world.py 文件没有跟踪,所以显示的是 Untracked files,我们来对其进行跟踪提交:

      $ git add hello-world.py
      $ git commit -m "edit hello-world.py"
      [main b32d1cb] edit hello-world.py
       1 file changed, 3 insertions(+)
       create mode 100644 hello-world.py
      

      git add 命令将文件加入暂存区,git commit 命令将文件提交,git commit -m "describe" 引号部分是对此次提交的描述,方便别人或自己以后查看此次的更改。提交成功后,可以通过 git log 命令查看提交日志:

      $ git log
      commit b32d1cb72107fae1fdbc6f745add5359c2eae312 (HEAD -> main)
      Author: leishen <liu096221.@gmail.com>
      Date:   Mon Dec 25 20:16:32 2023 +0800
      
          edit hello-world.py
      
      commit 568159c25e014620285fac1414380c98c84a129f (origin/main, origin/HEAD)
      Author: hello-world-tmd <129686384+hello-world-tmd@users.noreply.github.com>
      Date:   Mon Dec 25 19:27:12 2023 +0800
      
          Initial commit
      

      上面有一行很醒目的 edit hello-world.py 就是刚说的对提交的描述

    • 进行 push

      执行 push 命令后,GitHub 上的仓库就会被更新:

      $ git push
      Enumerating objects: 4, done.
      Counting objects: 100% (4/4), done.
      Delta compression using up to 16 threads
      Compressing objects: 100% (3/3), done.
      Writing objects: 100% (3/3), 338 bytes | 338.00 KiB/s, done.
      Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
      To github.com:hello-world-tmd/git.git
         568159c..b32d1cb  main -> main
      

      OK,现在代码就在 GitHub 上公开了,好处当然不止这些。首先,Git 的重要性不用多说;其次,如果你在 GitHub 上的开源代码有很多的 star(可以理解为收藏量),那这也是一种能力的体现(但到了我国就变了,很多地方都有刷 star 的,所以国内的这个有时候不被重视);最后,记录自己学习的代码笔记方便别人,也方便自己。最最最重要的,不怕别人随便删你代码了,还能有一个免费的云盘。
      ub 上公开了,好处当然不止这些。首先,Git 的重要性不用多说;其次,如果你在 GitHub 上的开源代码有很多的 star(可以理解为收藏量),那这也是一种能力的体现(但到了我国就变了,很多地方都有刷 star 的,所以国内的这个有时候不被重视);最后,记录自己学习的代码笔记方便别人,也方便自己。最最最重要的,不怕别人随便删你代码了,还能有一个免费的云盘。

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值