【讲义】第六课:远程!

直播讲义

(方方) #1

视频

共三个视频

作业

问卷

远程登录 & 远程仓库

远程登录另一台机器

SSH 原理与运用

  1. 用密码登录 ssh user@host
  2. 用 ssh key 登录
    1. 首先你要准备两个 key ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
      1. 一个公钥(yue4)(public key)
      2. 一个私钥(private key)
    2. 把 public key 给远程机器
      • ssh-copy-id user@host
      • public key 可以随便给多个 host

退出一台机器

  1. exit
  2. logout
  3. ctrl + D

git 基础(之后会讲高级)

配置

alias ga="git add"
alias gc="git commit -v"
alias gp="git push"
alias gl="git pull"
alias gcl="git clone"
alias gst="git status -sb"

git config --global user.name xxx #方便产品经理找(怼)你
git config --global user.email yyy #方便产品经理找(怼)你
git config --global push.default simple 
git config --global core.quotepath false #防止文件名变成数字
git config --global core.editor "vim" #使用vim编辑提交信息

这些配置都是在写 ~/.gitconfig 文件而已

代码演示

mkdir git-demo
cd git-demo
git init
touch 1.txt # 编辑第一行文本
git status -sb
git add .
git status -sb
git commit -v
git remote add origin git@xxxxxxxx # 将当前仓库与远程仓库建立联系
git push -u origin master # -u 的意思是将本地分支与远程分支建立联系

git init

创建 .git 目录(本地仓库)

git add

多行文字 纳入 git 控制范围(stage、历史的舞台)

git commit

存入 .git 目录

git log

展示历史

git remote add xxx yyy

添加一个远程仓库,名字为 xxx,地址为 yyy

如果你要修改 yyy,可以使用 git remote set-url xxx zzz

git push

将 .git 上传到另一个目录

git clone

git clone 的作用
1. 新建目录 xxx
2. 解压远程 .git 目录到 xxx/.git


git clone 会帮你新建目录的!所以你别自己建目录!


git pull

更新本地仓库(.git)和本地文件

原则

  1. git push 之前必须 git pull
  2. git pull 之前必须 git commit
  3. git commit 之前有时必须 git add

中级语法

git stash
git branch
git checkout
git merge
git reset
git reflog

高级语法

先不要看,需要了解 git 中的一些概念

Node.js 服务器

我们已经知道了

  1. 请求(request)
  2. 响应(response)

那么 Node.js 如何接收请求,发出响应呢?

  1. request 对象包含请求的所有信息
  2. response 对象包含响应的所有信息

其他 API 只需看 文档

演示代码

细节

  1. 如何默认访问 index.html
  2. 文件后缀无用,HTTP 协议只看 Content-Type
  3. HTML、CSS、JS、JSON…… 所有所有的响应,都只是字符串

其他

  1. 如何中断命令行程序
  2. 如何让命令行程序在后台运行
  3. node index.js > output.log 2>&1 &
  4. node index.js >> output.log 2>&1 &

GitHub

把代码存到 GitHub

细节

  1. ssh 协议和 http 协议 的区别
  2. 生成 ssh-key 并上传
  3. 上传本地 .git 到 GitHub
  4. 不要在 git 目录里面再次 git initgit clone,除非你知道你在做什么。

GitHub Pages

如何预览 GitHub 上的页面

GitHub Issues

你可以用 Issues 在一分钟内搭建一个博客,功能包括:

  1. 评论
  2. Markdown 编写
  3. 可以点赞

作业

  1. 观看《计算机如何存储数据》,了解二进制和字符编码
  2. ssh 登录到阿里云,部署你的 Node.js 服务器,域名 iwritejs.com 可用。要求:有 HTML、CSS 和 JS 三种文件(建议不要直接抄,要一个字一个字地抄)
  3. 完成问卷
  4. 博客(对找工作有帮助,用GitHub Issues/简书/leanote/hexo/wtf-blog都行):
    1. 《什么是字符编码》
    2. 《如何使用 GitHub Pages 预览页面》

(方方) #2

(从这到那) #3

关于ssh过了一分钟会断的解决方法

在ssh的时候加一个参数,比如我的是这样

ssh -o serveraliveinterval=60 student21@ip"



为了方便我们可以在.bashrc 中添加alias
像这样

alias aliyun="ssh -o serveraliveinterval=60 student21@ip"

保存后,重新打开gitbash。
直接输入aliyun就可以啦!!!


(方方) #4