运维自动化 第一章 git
一.git简单操作
4个地方:
工作区: 当前编辑的区域
缓存区: add 之后的区域
本地仓库: commit之后的区域
远程仓库 :远程的区域
简单操作:
git init 初始化操作 比如我选定了一个文件,我输入了git init ,当前这个文件就是归git管理了
git status 查看git的状态
git add 将文件放到缓存区
git commit -m '操作信息,这里尽量写的详细一点,防止往后看了不知道这一步是干啥的' 将缓存的内容提交到本地仓库
git config --global user.name '' 设置用户的用户名
git config --global user.email '' 设置用户的邮箱
git config --global --unset user.email '' 删除用户的邮箱
git config --global --unset user.name '' 删除用户的用户名
git log 查看当前版本之前提交的记录
git reflog 查看所有提交记录
git reset --hard 'hash值' 回退到之前某次提交的地方 慎用(如果删除之后不能回退)
git checkout filename 将指定文件回退到最近一次commit的地方,只对工作区域修改,缓存区不变
git reset HEAD filename 将指定文件从缓存区拉取到工作区,不会覆盖原来的数据
git diff 对比缓存区和工作区的区别
git diff --cached 对比缓存区和本地仓库的区别
两个远程仓库的网站
github , 码云
注意这里遇到的错误:
因为线上版本跟本地版本库不一致,本地版本比线上新
` ! [rejected] master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/417685417/cw.git'
解决办法:
git pull origin master --allow-unrelated-histories #强制拉取
冲突 : 同时修改了一个文件的同一个位置,冲突自己解决
`Auto-merging templates/index.html
CONFLICT (content): Merge conflict in templates/index.html
Automatic merge failed; fix conflicts and then commit the result.
因为没权限
`Logon failed, use ctrl+c to cancel basic credential prompt.
remote: Permission to 417685417/cw.git denied to WuPeiqi.
fatal: unable to access 'https://github.com/417685417/cw.git/': The requested URL returned error: 403
git remote add origin +地址 添加别名 将本地的东西放到网站上
git clone +地址 将网站上的东西clone(下载)下来
clone指定分支:git clone -b 指定分支名 +地址
git push origin master 将本地的文件上传到远程仓库
git push -f # 强制提交
git pull origin master 将远程仓库的文件拉取到本地
快照
git stash 创建一个快照
git stash pop 取出快照并删除快照记录
git stash list 查看快照记录
git stash drop name 删除快照
git stash apply name 取出快照

git 分支
git branch #查看当前分支
git branch 分支名 #创建分支
git checkout 分支名 #切换到分支
git checkout -b 分支名 #创建并切换到分支
git merge (master)分支名 #合并当前所在分支和git的那个分支(master)
git branch -d 分支名 #删除分支
git branch dev origin/dev #创建dev分支并以线上的为蓝本
git branch -b dev origin/dev #创建并以线上分支为蓝本并切换到dev下
git tag 创建标签(跟上线内容的版本有关)
git tag #查看tag
git tag -a tagv(版本号) -m '信息' #以当前的位置创建
git tag -a tagv(版本号) -m '信息' hash值 # 以某次提交为蓝本创建
git tag -d tagv(版本号) #删除tag
git push origin :refs/tags/tagv(版本号) #删除远程仓库中的tag(版本)
git push origin --tags #上传所有的tag(所有的版本都推上去)
git pull #下载(将远程仓库的内容拉取下来)
git 忽略文件
解释 : 比如我写了一个文件,但是我不想把这个文件上传到远程仓库中
1.创建一个隐藏文件,名为.gitignore
vim .gitignore
2.在这个隐藏文件中写上你要忽略上传文件的名字即可
3.然后 git add . 和 git commit -m '信息' 就行了
此时就将.gitignore文件上传上去了
上传上去也能下载下来,
如果在.gitignore中写了/ ,代表从这往下所有的都不会被忽略了
变基(rebase): 强行合并到一条直线上
运维自动化 第一章 git的更多相关文章
- CentOS 下运维自动化 Shell 脚本之 expect
CentOS 下运维自动化 Shell脚本之expect 一.预备知识: 1.在 Terminal 中反斜杠,即 "" 代表转义符,或称逃脱符.("echo -e与pri ...
- 运维自动化之SALTSTACK简单入门
运维自动化之SaltStack简单入门 饱食终日而无所事事,是颓也,废也.但看昨日,费九牛二虎之力除一BUG便流连于新番之中,不知东方之既黑,实乃颓颓然而荒废矣.故今日来缀一文以忏昨日之悔. Salt ...
- Ansible运维自动化工具19个常用模块使用实例【转】
一.模块列表 1.setup 2.ping 3.file 4.copy 5.command 6.shell 7.script 8.cron 9.yum 10.service 11.group 12.u ...
- 运维自动化之salt笔记
1:saltstack的基本介绍 2:salt的安装 1:服务端1:安装2:配置文件3:运行4:注意事项2:客户端1:安装2:配置文件3:运行4:注意事项 3:salt的使用: 1:基础知识1:tar ...
- 运维自动化之ansible的安装与使用 转
运维自动化之ansible的安装与使用 随着服务器数量的增长,我们需要一个批量工具去提高工作效率,之前用的是puppet,ansible的简单,适用让我眼前一亮,决定写一篇ansible从安装到基本配 ...
- Ansible 运维自动化 ( 配置管理工具 )
背景 出差背景,要搞项目的自动化部署.因为只直接对接生产分发,机器又非常多,这样以往使用的bat只能作为应急方案了,还是得考虑使用专业化的工具来做这个事情! 当下有许多的运维自动化工具( 配置管理 ) ...
- 运维自动化之系统部署 PXE(二)
PXE介绍 Preboot Excution Environment 预启动执行环境 Intel公司研发 基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映像,并由此支持 ...
- Ansible运维自动化
Ansible运维自动化 一.Ansible-playbook的初步使用 playbook的使用,playbook可以把ansible的模块进行组合 ln -s /usr/local/python/b ...
- lykops运维自动化
lykops lykops是一套web可视化的运维自动化项目,基于python3+django开发的. 已实现功能 1.用户管理 详情 2.主机管理 主要功能:收录主机,为其他模块(例如:执行任务)直 ...
随机推荐
- cocos2d-x Android(SDK,NDK,JDK,ANT)下载地址
搭建Android环境需要用到Android SDK.NDK.Ant和JDK: 下载Android SDK 下载Android NDk 下载Android JDK 下载Ant
- Linux平台 Oracle 18c RAC安装Part2:GI配置
三.GI(Grid Infrastructure)安装 3.1 解压GI的安装包 3.2 安装配置Xmanager软件 3.3 共享存储LUN的赋权 3.4 使用Xmanager图形化界面配置GI 3 ...
- pytorch torchvision对图像进行变换
class torchvision.transforms.Compose(转换) 多个将transform组合起来使用. class torchvision.transforms.CenterCrop ...
- 20165215 MySort的实现
MySort的实现 要求 模拟实现Linux下Sort -t : -k 2的功能 要有伪代码,产品代码,测试代码(注意测试用例的设计) import java.util.*; public class ...
- [autocomplete]如果条目末尾有空格,MustMatch不起作用
如果mustMatch被激活,我们发现,当条目最后包含一个空格时,一旦我们从列表中选择值,它将被拒绝.我们已经发现了这个问题,它在搜索事件中:在第184行,您修剪了输入的值: $.each(trimW ...
- CSS——background-size实现图片自适应
在网页端,我们经常想让图片能够自适应拉伸缩放,使之可以完美的嵌入我们给定的容器里,比如div,button,input,下面我将用代码来说明如何实现这个功能! 一.div背景图自适应 如果知道图片都有 ...
- Docker Kubernetes Service 代理服务创建
Docker Kubernetes Service 代理服务创建 创建Service需要提前创建好pod容器.再创建Service时需要指定Pod标签,它会提供一个暴露端口默会分配容器内网访问的唯一 ...
- opencv学习之路(22)、轮廓查找与绘制(一)
一.简介 图2 二.代码 #include"opencv2/opencv.hpp" #include<iostream> using namespace std; us ...
- ant___令牌过滤器
令牌过滤器允许我们在复制时过滤文件中的数据.要进行过滤,需要使用一个必须与过滤器任务中的@token @设置匹配的标记.任务使用@作为标记分隔符.为了实现此功能,apache ant提供了使用toke ...
- UVA1400 "Ray, Pass me the dishes!"
思路 线段树维护最大子段和,只不过这题还要维护左右端点 还是维护pre,suf,sum,ans,只不过每个再多出一个维护端点的变量即可 注意多解讨论的大于号和大于等于号 代码 #include < ...