一.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的更多相关文章

  1. CentOS 下运维自动化 Shell 脚本之 expect

    CentOS 下运维自动化 Shell脚本之expect 一.预备知识: 1.在 Terminal 中反斜杠,即 "" 代表转义符,或称逃脱符.("echo -e与pri ...

  2. 运维自动化之SALTSTACK简单入门

    运维自动化之SaltStack简单入门 饱食终日而无所事事,是颓也,废也.但看昨日,费九牛二虎之力除一BUG便流连于新番之中,不知东方之既黑,实乃颓颓然而荒废矣.故今日来缀一文以忏昨日之悔. Salt ...

  3. 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 ...

  4. 运维自动化之salt笔记

    1:saltstack的基本介绍 2:salt的安装 1:服务端1:安装2:配置文件3:运行4:注意事项2:客户端1:安装2:配置文件3:运行4:注意事项 3:salt的使用: 1:基础知识1:tar ...

  5. 运维自动化之ansible的安装与使用 转

    运维自动化之ansible的安装与使用 随着服务器数量的增长,我们需要一个批量工具去提高工作效率,之前用的是puppet,ansible的简单,适用让我眼前一亮,决定写一篇ansible从安装到基本配 ...

  6. Ansible 运维自动化 ( 配置管理工具 )

    背景 出差背景,要搞项目的自动化部署.因为只直接对接生产分发,机器又非常多,这样以往使用的bat只能作为应急方案了,还是得考虑使用专业化的工具来做这个事情! 当下有许多的运维自动化工具( 配置管理 ) ...

  7. 运维自动化之系统部署 PXE(二)

    PXE介绍 Preboot Excution Environment 预启动执行环境 Intel公司研发 基于Client/Server的网络模式,支持远程主机通过网络从远端服务器下载映像,并由此支持 ...

  8. Ansible运维自动化

    Ansible运维自动化 一.Ansible-playbook的初步使用 playbook的使用,playbook可以把ansible的模块进行组合 ln -s /usr/local/python/b ...

  9. lykops运维自动化

    lykops lykops是一套web可视化的运维自动化项目,基于python3+django开发的. 已实现功能 1.用户管理 详情 2.主机管理 主要功能:收录主机,为其他模块(例如:执行任务)直 ...

随机推荐

  1. Interesting (manacher + 前缀和处理)

    题意:相邻的两端回文串的价值为两个回文串总的区间左端点 × 区间右端点.然后计算目标串中所有该情况的总和. 思路:首先用manacher求出所有中心点的最大半径,然后我们知道对于左区间我们把贡献记录在 ...

  2. highChart 缺值-曲线断开问题

    time =item.datetime; aqi = Number(item.aqi); pm2_5 = Number(item.pm25); pm10 = Number(item.pm10); co ...

  3. 第八节 JS运动基础

    运动基础 让Div运动起来 速度——物体运动的快慢 运动中的Bug 不会停止 速度取某些值会无法停止 到达位置后再点击还会运动 重复点击速度加快 匀速运动(速度不变) 运动框架及应用: 运动框架: 在 ...

  4. Redis学习-hash数据类型

    hash 类型是string类型的field和value的映射表,或者说是一个string集合,适合存储对象,相比较而言,将一个对象类型存储在hash类型里要比存储在string类型里占用更少的内存空 ...

  5. Html h1-h6 标签

    Html h1-h6 标签 <html> <body> <!-- h1-h6标签:标题标签 --> <h1>XSK</h1> <h2& ...

  6. 【mysql】逗号分割字段的行列转换

    由于很多业务表因为历史原因或者性能原因,都使用了违反第一范式的设计模式,即同一个列中存储了多个属性值.这种模式下,应用常常需要将这个列依据分隔符进行分割,并得到列转行的结果:这里使用substring ...

  7. 剑指offer(26)二叉搜索树与双向链表

    题目描述 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树中结点指针的指向. 题目分析 要生成排序的双向列表,那么只能是中序遍历,因为中序遍历才能从小到 ...

  8. COCO数据集格式互换

    poly->compacted RLE:     seg=np.array([312.29, 562.89, 402.25, 511.49, 400.96, 425.38, 398.39, 37 ...

  9. 【常见错误】Quartz常见错误

    1.集群之后把其中一个Quartz服务停了,其他的也不接手工作 问题描述 集群之后,A节点执行了大多数任务,B节点大部分时间处于空闲,停掉A节点,B节点也不会接手工作. 解决方式 修改Quartz的配 ...

  10. 【ASP.NET】 Config Error: This configuration section cannot be used at this path.

    Config Error: This configuration section cannot be used at this path. This happens when the section ...