GitHub托管静态网站

注册账号

  1. 注册GitHub账号并创建新仓库(记得:勾选 “Initialize... README”)
  2. 进入Settings,在GitHub Pages内容中启用“Launch automatic page generator”

克隆仓库

  1. 创建并进入你你要放仓库的文件夹后右键 Git Bash Here 打开命令行窗口
  2. 键入命令克隆仓库,git clone https://github.com/用户名/项目名.github.com.git
  3. git init(初始化仓库)

创建SSH KEY

  1. 建立本机KEY

    ssh-keygen -t rsa -C "x@qq.com"
    

(过程中会提示文件保存路径和输入密码 passphrase,可以不输直接两次Enter)

创建成功后进入 C:\Users\用户名\ .ssh文件夹,可以看到 id_rsa 和 id_rsa.pub 文件,id_rsa 是私钥,不能泄露,id_rsa.pub 是公钥,可以公开

  1. GitHub上添加KEY

    在GitHub上,点击 Settings 进入设置,选择 SSH and GPG keys,然后点击 New SSH Key,Title项可随意写,Key项里粘贴 id_rsa.pub 文件里的全部内容,点击 Add SSH key 提交

  2. 验证是否成功(Successfully 表示成功) 在 git bash 里输入下面的命令,初次设置的话会提示,输入 yes

    ssh -T git@github.com
    
  3. 设置 username 和 email

    git config --global user.name "name" //你的GitHub登陆名
    git config --global user.email "x@x.com" //你的GitHub注册邮箱
    

推送到远端仓库

添加一个远程不存在的文件(git add . 可以添加所有文件)

git add x.html //加入 x.html 文件

提交修改并描述

git commit -m "描述"

推送并更新到远端仓库

git push origin master

备注内容:

关联一个远程仓库

git remote add origin git@github.com:x/x.git

第一次推送 master 分支的所有内容

git push -u origin master

(此后,每次就可以用 git push origin master 推送最新修改)

常用命令

$ git clone //本地如果无远程代码,先做这步,不然就忽略 $ cd //定位到你blog的目录下 $ git status //查看本地自己修改了多少文件 $ git add . //添加远程不存在的git文件 $ git commit -m "what I want told to someone" //提交修改 $ git push //更新到远程服务器上 $ git rm //移除文件

$ rm <file> 只删除工作区的文件
$ git rm --cached <file> 只删除暂存区的文件
$ git rm <file> 删除工作区和暂存区的文件

$ git checkout -- x.txt (用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”)

密钥相关

~/.ssh //检查本机中是否有公钥信息
rm id_rsa //删除已有公钥
cat ~/.ssh/id_rsa.pub  //显示刚生成的公钥

项目相关

git init //初始化
git remote add origin 远程项目地址 //链接远程服务器
git add . //上传目录下所有文件
git commit -m "注释" //提交并注释
git pull origin 分支 //链接远程主机分支到本地
git push origin master //上传本地所有文件到master分支
git push -u origin 分支 //当远程存在多个分支时,使用-u

本地分之

git branch //查看本地所有分支
git branch x //创建x分支
git checkout x //切换到x分支
git branch -d x //删除本地x分支,注意需要在非删除分支下

克隆到本地

git clone 远程仓库地址 //下载到本地
git clone 远程仓库地址 -b x //克隆远程x分支

删除远程仓库文件及文件夹

git rm -r --cached ignore_file //删除缓存
git rm -r --cached a/1.txt //删除a目录下的1.txt文件
git rm -r --cached a //删除a目录
git commit -m "注释" 
git push

远程库操作

git remote //列出远程分支
git remote -v //列队远程分支对应的url
git remote add x url //创建远程地址为url的x分支
git remote remove x //删除远程x分支
git remote set-url x url //将x的远程地址变更为url