1 安装:

sudo apt-get install git

2 创建一个版本库:

新建一个文件夹,进入这个目录之后

git init

3 创建一个版本:

git add 文件名或目录  #表示将当前文件的修改放入缓存区 先不提交
git commit -m '版本名称'    #将缓冲区提交建立一个版本

4 查看版本记录

geit log

每条一行查看版本信息

git log --pretty=oneline 

按图形方式查看 有合并版本的时候很清晰

git log --pretty=oneline --graph 

5 切换版本:

HEAD^表示上一个

HEAD^^表示上两个

HEAD~10 表示前面的第十个版本

git reset --hard HEAD^  #回跳一个版本
git reset --hard 版本号  #根据版本号跳转到指定的版本

6 查看操作记录

git reflog

7 查看当前工作树的状态(有哪些修改,缓冲区有哪些未提交)

git status

8 撤销修改

清空当前工作区的修改,如果缓冲区有数据,就恢复成缓冲区,如果没有就恢复成上一个提交的版本

git checkout --文件名称

清空缓冲区的内容放回到工作区

git reset HEAD 文件名

9 比较不同

git diff HEAD -- 文件名  #比较工作区和HEAD版本的不同(上次提交的版本)
git diff HEAD(版本1) HEAD^^(版本2) -- 文件名  #比较版本之间文件的区别

10 删除文件

git rm
git commit -m '版本名称'

11 分支

查看当前所有分支

git branch

创建一个分支并且使用它工作

git checkout -b 分支名称

快速合并到有新版本的另一个分支

git merge 分支名称

删除分支

git branch -d 名称

切换分支

git branch 分支名称

解决冲突

在分支1中 和分支2中分别对相同文件做了不同修改,当尝试进行分支合并的时候产生冲突

可以 在其中一个分支中编辑冲突文件,之后,再提交版本,

这时候相当于在当前分支合并了冲突文件 另一个分支没有变化

创建新版本合并,不适用快速合并:

不会合并到两一个版本,而是会合并后创建一个新的版本

git merge --no-ff -m '版本名称'

BUG分支:

在产生bug的分支 新建一个分支 进行修改,

然后修改好了再进行分支合并

最后把临时建立的bug分支删除

12 保存当前工作区(不想提交,下次还能继续工作区内容)

git stash

之后切换到其他分支,然后切换回来

恢复工作空间

git stash pop

linux下git常用命令的更多相关文章

  1. linux 下 mysql 常用命令

    linux 下 mysql 常用命令   阅读目录 ====================== 1.开启和关闭 1.1.开启 1.2.关闭 1.3.重启 2.登录 2.1.密码明文 2.2.密码密文 ...

  2. Linux课程---2、Linux下最常用命令(查看帮助命令)

    Linux课程---2.Linux下最常用命令(查看帮助命令) 一.总结 一句话总结: man 1.显示文件? ls:ls带其它参数详情可以man ls man ls:比如 ls -a显示隐藏文件,l ...

  3. [转]Linux下网络常用命令和工具

    转自:http://int32bit.me/2016/05/04/Linux%E5%B8%B8%E7%94%A8%E7%BD%91%E7%BB%9C%E5%B7%A5%E5%85%B7%E6%80%B ...

  4. linux下svn常用命令

    (如果是第一次提交文件,很可能会出现“svn:'.'不是工作副本”,即当前目录不是工作副本,这个时候需要用到import: eg:svn import . url) 1.将文件checkout到本地目 ...

  5. linux下 oracle常用命令

    打开图形化窗口: 1)Database Configuration Assistant windows    (添加数据库实例) $ dbca 2)Oracle Net Configuration A ...

  6. linux下一些常用命令和访问目录

    1. 目录      ls   列出目录文件名      ll    列出所有目录文件的访问权限等相关信息,包括 .   ..      ls -a  列出所有目录文件名,包括 .   .. ls - ...

  7. linux下的常用命令

    1 fg切换前后台作业 将后台作业转换为前台作业,”fg %作业号“ 2 stty改变和打印终端行设置 tostop 阻止后台作业写终端,stty -a显示终端的所有选项 3 uname查看机子信息 ...

  8. linux下ftp常用命令

    1. Linux 终端连接FTP $ ftp 10.85.3.12 Name : fxm5547 Password: ftp> 如果FTP 允许匿名用户,那么用户名要输入anonymous,密码 ...

  9. Linux下Redis常用命令

    >src/redis-server  启动 Redis 服务  或者>src/redis-server redis.conf src/redis-server redis.conf 1&g ...

随机推荐

  1. 利用CVE-2017-11882拿到持久性shell

    利用CVE-2017-11882拿到持久性shell 近日微软又爆出一个严重漏洞,利用该漏洞可以直接拿到目标机shell.这么好玩的东西怎么能错过了,于是搭建环境复现了一把. 首先去GitHub上下载 ...

  2. centos6.8安装cdh5.10.0(离线版)

    Centos6.8安装CDH5 相关包的下载地址: Cloudera Manager地址:http://archive.cloudera.com/cm5/cm/5/ CDH安装包地址:http://a ...

  3. sql数据库中日期函数---2017-04-12

    一.SQLServer时间日期函数详解 1.  当前系统日期.时间 select getdate() 2. dateadd      在向指定日期加上一段时间的基础上,返回新的 datetime 值 ...

  4. C语言第一次博客作业

    一,PTA实验作业 题目1.温度转换 本题要求编写程序,计算华氏温度150°F对应的摄氏温度.计算公式:C=5×(F−32)/9,式中:C表示摄氏温度,F表示华氏温度,输出数据要求为整型. 1.实验代 ...

  5. 9.FileWriter 和 BufferWriter

    FileWriter 和 BufferWriter的使用场景 http://www.cnblogs.com/xjyh/p/4529809.html

  6. ELK学习笔记(五)简单搜索和DSL查询

    检索文档 现在我们有一些数据存储在Elasticsearch中,我们可以开始处理这个应用程序的业务需求. 这在Elasticsearch中很容易.我们只需执行HTTP GET请求并指定文档的地址--索 ...

  7. nginx静态服务器配置

    1. nginx安装 在 Ubuntu 下,可以舍去编译安装的过程,直接 apt-get sudo apt-get install nginx sudo service nginx start 2. ...

  8. 一次精疲力尽的改bug经历

    一.介绍 最近一直在做有关JavaScriptCore的技术需求,上周发现一个问题,当在JavaScriptCore在垃圾回收时,项目会有一定几率发生崩溃.崩溃发生时调用堆栈如下: 图1 调用堆栈 先 ...

  9. http的CA证书安装(也就是https)

    近几年随着安全意识的提高,https流行起来,很多小伙伴不太了解https是什么,其实http和https并没有区别,简单的来说,https就是将http通信进行了加密和解密的一个过程.加上谷歌浏览器 ...

  10. Jquery点击除了指定div元素其他地方,隐藏该div

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <script ty ...