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 “hunger@jirengu.com"--一直按回车,默认生成在~/.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 git@github.com:账户名/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的教程走
网友评论