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. 让你的网站high起来

    最初是在陌小雨的网站上看见这个功能,赶脚很牛逼的样子,于是给自己的网站加上了.在我网站首页的轮播图上面那个按钮就能实现这个功能,当然这里你点击右边的这个链接也可以看到效果——>点此嗨一下. 效果 ...

  2. VS,连接到oracle 报要升级到8.多少版本的错

    1:确定服务器的oracle版本 2:本地的客户端版本要和服务器一致 3:操作系统位数要一致

  3. 【转载】Perl中的引用

    为什么使用引用? 在perl4中,hash表中的value字段只能是scalar,而不能是list,这对于有些情况是很不方便的,比如有下面的数据: Chicago, USAFrankfurt, Ger ...

  4. eclipse的Debug模式下的快捷键

    主要快捷键: F5, F6, F7, F8的使用 F5:  进入当前方法 F6: 一步步执行 F7:  跳出方法, 返回到调用此方法的最后一条语句 F8: 继续执行,跳转到下一个断点的位置 示例: 在 ...

  5. 笔记:I/O流-对象序列化

    Java 语言支持一种称为对象序列化(Object Serialization)的非常通用的机制,可以将任何对象写入到流中,并在之后将其读回,首先需要支持对象序列化的类,必须继承与 Serializa ...

  6. 笔记:Maven 项目目录结构

    Maven提倡使用一个共同的标准目录结构,使开发人员能在熟悉了一个Maven工程后,对其他的Maven工程也能清晰了解.这样做也省去了很多设置的麻烦,以下的文档介绍是Maven希望的目录结构,并且也是 ...

  7. python装饰器使用

    看了不少python关于装饰器文章,觉得还挺实用,发贴来mark一下(以前做笔记总会长时间不看就忘记,放这里应该不会忘了吧 - -) 先来看一个简单的知识点: def a(): print(" ...

  8. 【Python】 系统配置/进程等信息查看 psutil

    psutil 原以为psutil只是跟进程有关的一个模块,没想到它其实提供了从CPU到内存各种各样的信息,十分IMBA.记录一下 我用了pip install psutil安装的这个模块,不过路中遇到 ...

  9. Nginx代理转发Apache+svn

    1.安装svn和httpd yum install httpd yum install subversion mod_dav_svn 创建仓库目录 mkdir -p /var/www/svn 3.创建 ...

  10. python 函数 装饰器的使用方法

    一.装饰器  首先,我们要了解到什么是开放封闭式原则? 软件一旦上线后,对修改源代码是封闭的,对功能的扩张是开放的,所以我们应该遵循开放封闭的原则. 也就是说:我们必须找到一种解决方案,能够在不修改一 ...