一.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. qt 安装包生成2

    使用Qt Installer Framework制作安装包 2018年07月01日 03:45:37 大黄老鼠 阅读数:878 标签: qt更多 个人分类: Qt   版权声明:本文为博主原创文章,未 ...

  2. Jumpserver(跳板机、堡垒机)启动jms Django连接mysql数据库报错

    解决办法 根据报错信息 , 去查看官方手册 在settings.py文件夹加入DATABASES['OPTIONS']['init_command'] = "SET sql_mode='ST ...

  3. [openjudge-动态规划]鸣人的影分身

    题目描述 描述 在火影忍者的世界里,令敌人捉摸不透是非常关键的.我们的主角漩涡鸣人所拥有的一个招数--多重影分身之术--就是一个很好的例子. 影分身是由鸣人身体的查克拉能量制造的,使用的查克拉越多,制 ...

  4. qrCode二维码字符串长度太多压缩的问题

    昨天整微信的扫码支付时,用qrcode生成二维码,结果字符串太长而失败.今天发现利用pako压缩,可扫描后显示乱码,特记录一下. palo插件地址:https://github.com/nodeca/ ...

  5. DataTables页面列点击排序

    <!-- DataTables --> <script type="text/javascript" charset="utf8" src=& ...

  6. Servlet+纯java+MySQL实现课程信息的增删改查

    Dbutil: package com.zh.util; import java.sql.Connection; import java.sql.DriverManager; import java. ...

  7. 51Nod 1058 N的阶乘的长度

    输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3.   Input 输入N(1 <= N <= 10^6) Output 输出N的阶乘的长度 Input示例 6 Out ...

  8. 使用 mysqladmin debug 查看死锁信息

    使用 mysqladmin debug 查看死锁信息 mysqladmin -S /mysql/data/mysql.sock debug 然后在error日志中,会看到: 11 lock struc ...

  9. 复旦大学2016--2017学年第二学期(16级)高等代数II期末考试第六大题解答

    六.(本题10分)  设 $A$ 为 $n$ 阶半正定实对称阵, $S$ 为 $n$ 阶实反对称阵, 满足 $AS+SA=0$. 证明: $|A+S|>0$ 的充要条件是 $r(A)+r(S)= ...

  10. springboot配置cxf

    1.引入两个需要的jar <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf- ...