当前位置:   article > 正文

上手 GitHub_git for windows provides a bash emulation used to

git for windows provides a bash emulation used to run git from the command l

本文为《GitHub入门与实践》的读书笔记

基本概念

  • GitHub 是为开发者提供 Git 仓库的托管服务

  • Pull Request:开发者在本地更改源代码后,向 GitHub 中托管的 Git 仓库请求合并的功能
  • 在 GitHub 上, 用户所有用文字输入的功能都可以用 GitHub Flavored Markdown(GFM)语法进行描述
  • @ 用户名 / @ 组织名:向个人或团队成员发送通知
  • Issue 功能,是将一个任务或问题分配给一个 Issue 进行追踪和管理。每当进行 Pull Request,都会同时创建一个 Issue。每一个功能更改或修正都对应一个 Issue,讨论或修正都以这个 Issue 为中心进行。只要查看 Issue,就能知道和这个更改相关的一切信息,并以此进行管理
    • \# 编号:连接到该仓库所对应的 Issue 编号
    • 用户名 / 仓库名 # 编号:连接到指定仓库所对应的 Issue 编号

版本控制

集中型

  • 将仓库集中存放在服务器,有便于管理的优点。但是一旦开发者所处的环境不能连接服务器,就无法获取最新的源代码,开发也就几乎无法进行。服务器宕机时也是同样的道理
    在这里插入图片描述

分散型

以 Git 为代表

  • 如图中所示,GitHub 将仓库 Fork 给了每一个用户。Fork 就是将 GitHub 的某个特定仓库复制到自己的账户下
    在这里插入图片描述

msysGit (Windows安装Git)

Git BASH

  • Git for Windows provides a BASH emulation used to run Git from the command line.

Git GUI

  • As Windows users commonly expect graphical user interfaces, Git for Windows also provides the Git GUI, a powerful alternative to Git BASH, offering a graphical version of just about every Git command line function, as well as comprehensive visual diff tools.

安装

  • 一路选择默认选项即可
  • 注意下面这两个选项:
    在这里插入图片描述
    选择这个默认选项会自动设置环境变量,这样在 Windows 命令行中也可以运行 git 命令。如果勾选第一个选项则只能在 Git Bash 中运行 git 命令
    在这里插入图片描述
    GitHub 中公开的代码大部分都是以 Mac 或 Linux 中的 LF (LineFeed) 换行。然而,由于 Windows 中是以 CRLF (Carriage Return +Line Feed) 换行的,所以在非对应的编辑器中将不能正常显示。Git 可以通过设置自动转换这些换行符。使用 Windows 环境的各位,请选择推荐的 “Checkout Windows-style, commit Unix-style line endings” 选项。换行符在签出时会自动转换为 CRLF,在提交时则会自动转换为 LF

初始设置

设置姓名和邮箱地址

$ git config --global user.name "Firstname Lastname"
$ git config --global user.email "your_email@example.com"
  • 1
  • 2

这个命令,会在 ~/.gitconfig 中以如下形式输出设置文件

[user]
name = Firstname Lastname
email = your_email@example.com
  • 1
  • 2
  • 3
  • 想更改这些信息时,可以直接编辑这个设置文件。这里设置的姓名和邮箱地址会用在 Git 的提交日志中。由于在 GitHub 上公开仓库时,这里的姓名和邮箱地址也会随着提交日志一同被公开,所以请不要使用不便公开的隐私信息

在 GitHub 上公开代码后,请不要使用汉字,尽量用英文进行描述

提高命令输出的可读性

$ git config --global color.ui auto
  • 1
  • ~/.gitconfig 中会增加下面一行
[color]
	ui = auto
  • 1
  • 2

SSH 登录 GitHub

设置 SSH Key

  • GitHub 上连接已有仓库时的认证,是通过使用了 SSH 的公开密钥认证方式进行的。现在让我们来创建公开密钥认证所需的 SSH Key,并将其添加至GitHub
# ssh-keygen命令可以用来制作不用密码可立即登录的ssh用户
# 
# 输入密码之后再用ssh连接服务器时就不需要再次输入密码了
$ ssh-keygen -t rsa -C "your_email@example.com" # your_email@example.com为创建账户时用的邮箱
Generating public/private rsa key pair.
Enter file in which to save the key(/Users/your_user_directory/.ssh/id_rsa): # 按回车键
Enter passphrase (empty for no passphrase): # 输入密码 也可以按回车不设置,这样在以后连接到服务器时就不用输入密码了
Enter same passphrase again: # 再次输入密码
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 输入密码后会出现以下结果。其中 id_rsa 文件是私有密钥,id_rsa.pub 是公开密钥
Your identification has been saved in /Users/your_user_directory/.ssh/id_rsa.
Your public key has been saved in /Users/your_user_directory/.ssh/id_rsa.pub.
The key fingerprint is:
...# fingerprint值 your_email@example.com
The key's randomart image is:
+--[ RSA 2048]----+
| .+ + |
| = o O . |
# ...
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

添加公开密钥

  • 在 GitHub 中添加公开密钥,今后就可以用私有密钥进行认证了

  • 点击右上角的账户设定按钮(Account Settings),选择 SSH and GPG Keys 菜单。点击 New SSH Key 之后,会出现如下图所示的输入框。在 Title 中输入适当的密钥名称。Key 部分请粘贴 id_rsa.pub 文件里的内容
$ cat ~/.ssh/id_rsa.pub
ssh-rsa 公开密钥的内容 your_email@example.com
  • 1
  • 2

在这里插入图片描述

  • 完成以上设置后,就可以用手中的私人密钥与 GitHub 进行认证和通信了
# -T 选项表示不显示终端,只显示连接成功信息
$ ssh -T git@github.com
The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is ... # fingerprint值 .
Are you sure you want to continue connecting (yes/no)? # 输入yes
Hi hirocastest! You've successfully authenticated, but GitHub does not provide shell access.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/927305
推荐阅读
相关标签
  

闽ICP备14008679号