任务三主线-Git与GitHub的使用

Git基础

  • github—New repository—Repository name:blog—README—Create repository—Clone or Download—一般不用https,用SSH-拷贝显示的地址—本地找一个文件夹—git clone 地址—no such identity,fatal:could not read from remote repository,因为没有设置公钥—如果是http需要输入用户名和密码,这样github不知道是不是合法的用户—在本地创建公钥和私钥对—ssh-keygen -t rsa -b 4096 -C “[email protected]"--一直按回车,默认生成在~/.ssh目录下,id_rsa.pub是公钥,给别人,访问我的话那这个公钥来访问,id_rsa是私钥,自己拿着--把公钥拷贝到GitHub--cat ~/.ssh/id_rsa.pub—把里面所有的东西拷贝—点击头像进入个人设置页面—SSH and GPG keys—new SSH key—随便输入名字—内容拷贝进去—开头带着 ssh-rsa—add—这时候就有权限向github进行推送了
  • README:介绍,把里面的markdown转化成html,展示到页面上,如果没有就是空的
  • 成功以后:cd blog—touch index.html—git add .(添加到暂存区)—git commit -am “addfile”(提交到本地库)—git push origin master (推送到github远程库)—点开项目的设置,找到github pages,选择master branch—线上预览项目

GitHub操作演示

  • 打开GitHub—注册登陆—new repository/blog—README—create
  • 在GitHub上创建了一个远程仓库—克隆到本地去
  • SSH—拷贝显示的地址—最重要的能力:观察报错
  • 设置—SSH keys—generating SSH keys—cd ~/.ssh/—ls—pwd—cat id_rsa.pub—拷贝下来添加到key里面—再输入密码进行一次确认—git clone—拷贝地址SSH—这时候就有了操作权限—cd blog/—ls—vim index.html—git add .—clear—git commit -am “add”—git push original master—github pages-master-保存起来

Git原理

  • why Git?
  • 版本控制:
    • 版本控制是记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统
    • 本地版本控制系统(记录文件版本的变化)
    • 集中式版本控制系统(有一个服务器,改动后立马推送到服务器上,服务器就是中心结点,SVN;万一坏了就比较惨,万一断网了提交不了)
    • 分布式版本控制系统(每次改东西先往本地的仓库里提交,等什么时候有网的时候,再一次性提交到里面,不管中心结点坏了与否,只要结点还在,就可以完整回复出来,Git)
  • Git的优势
    • 诞生于2005年,Linux开源社区
    • 速度快,简单的设计,允许上千个并行分支,分布式

Git原理-简单使用

  • 重要概念
    • 已提交(mommitted)该文件已经被安全的保存在本地数据库中
    • 已修改(modified)修改了某个文件,但还没有提交保存
    • 已暂存(staged)把已修改的文件放在下次提交时要保存的清单中
  • 起步
    • 初次使用需要设置姓名和邮箱
      • git config —global user.name “你的姓名“
      • git config —global user.email 邮箱
      • global只要设置好一次以后,所有的仓库都能用了
    • clone项目
      • 用于把一个GitHub上的项目clone到本地变为本地仓库
      • git clone [email protected]:账户名/blog.git
        cd blog
    • 添加文件并提交
      • 直接打开:open
      • touch a.md
      • echo “hello” > a.md
      • git status
      • git add .(当前文件夹中的所有新增和修改都放进去)
      • git status
      • git commit -am “add file”(每次提交都需要加备注)
      • git status
      • git push origin master(第一次)
    • 修改删除
      • 直接在上面修改
      • 远程和本地不同步:git pull—vim 把远程仓库的变动更新合并到本地仓库
      • 修改文件 vim a.md—git add .
      • git commit -a (自动打开vim编辑器,需要加上一些消息)
      • git push origin master
      • rm -rf a.md
      • git add .
      • git commit -am “删除a.md”

复杂使用

  • 本地创建一个git项目推送到远程空仓库
    • .git说明是一个仓库
    • 再新建一个测试的—mkdir blogtest—cd blogtest—touch README.md —git init(空文件夹git初始化)—ls -a—git status— git remote add origin 远程仓库的地址—git push origin master(origin就是上面的地址)
    • 本地和仓库的联系就是仓库和仓库之间的推送
    • git remote -v 查看本地库里面记录的远程库地址
    • git remote add origin 地址 这里把远程库的地址添加个标签叫origin
    • git push origin master 推送到远程库地址
    • git push -f origin master慎用,这样会强制推送,会覆盖别人的代码,如果远程被修改了,不会阻止
    • git remote add gitlab 地址 再添加一个远程库的标签
    • git push gitlab master 推送到gitlab标签的地址上
    • git remote remove gitlab删除gitlab标签
    • git remote set-url origin 地址 修改origin标签对应的地址
    • git remote rename gitlab coding 把gitlab标签改名为coding
  • 分支操作
    • git branch -a 查看所有分支 绿色本地,红色远程
    • git branch dev 创建本地库dev分支
    • git checkout dev 切换到dev分支
    • touch b.md
    • git add .
    • git commit -am “add b.md”
    • git push origin dev 推送到origin地址的dev分支上
    • git checkout master
    • git merge master 把dev上的东西合并到主干上
    • git push origin master
  • 冲突
    • 当自己和别人改动同一个文件的同一个地方,在执行git pull时更新本地合并时会出现冲突
    • 修改冲突文件
    • 重新提交
  • 任务
    • git remote add coding sddd
    • git push coding master

如何购买域名

  • enforceHTTPS
  • 如果个性化域名就可以取消了
  • 注意看续费
  • 更好的国外网站,更便宜,免费送一个信息加密:namesilo
  • namesilo优惠码
  • 支持支付宝
  • learn more
  • setting up an apex domain and www subdomain
  • 添加ALIAS到两个ip
  • 地球
  • A,Cname
  • GitHub地址
  • dig 一下
  • 反正就是全程跟着GitHub的教程走

你可能感兴趣的:(任务三主线-Git与GitHub的使用)