学习git大约有两个星期了,脑子里总算有点干货了,可以拿出来总结一下:

    git,用于版本控制的,刚开始觉得它是linux下默认的命令,其实也是个工具需要apt-get install git 安装一下。

    里面有很多命令,我也只会一些常用的,其他的大家需要git --help查看一级参数,然后git 参数1 --help基本可以查看所有你想用的命令了,通常我就是这么学习的,虽然是英文但是不妨碍看呢。

git log 查看本分支下最近提交日志。

git branch 查看本分支所在分支,以及列出所有分支。

  git branch -m | -M oldbranch newbranch 重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则,使用-m进行重命名。

  git branch -d | -D branchname 删除branchname分支 ,注意:-d和-D有区别具体看帮助信息

  git branch -d -r branchname 删除远程branchname分支

git add 将修改的内容添加到所在分支的仓库中

git checkout

  git checkout 分支A 切换到分支A

  git checkout -b 分支B 新建分支B并切换到分支B

  git checkout -f 移除修改的文件,当git fetch出现冲突后,用的比较多

git pull 更新到最近的分支(一般在master分支上做)

git rebase master 使master分支最新的东东加到当前所在的分支上,配合git pull使用

git diff 使更改后的文件与原来的做diff,显示出差异

  git diff --cached 当你git add 更改的文件了,但是还没有commit 这个时候该命令可以查看新旧文件的差异

git show 显示提交后, 显示diff 出文件的差异

git stash 暂时保存为提交的东西,不然虽然你git add了,但是你无法切换分支,然后用git statsh apply id号来还原  

未完待续……

写累了上张图精神精神,嘻嘻……

git push 失败的解决办法

假设执行操作:

1. 修改代码

2. git commit

3. git push

a, 此时 push 失败(错误提示:! [rejected] master -> master (non-fast-forward) )

解决办法:

$ git pull

若成功,则:

$ git push origin master:your-id

b, 若出现:error: unpack failed: error Missing tree 30c4809ade0b4b0c81cb7f882450774862b82361

解决办法:

Pushing with --no-thin argument works as a workaround for me

如:git push --no-thin omnigerrit HEAD:refs/for/android-4.4

这个问题发上原因如下:(你可以git push --help查看一下)

This happened to me when trying to push a new patch set to an existing review where the only change was in the commit message. Making a small change in one of the files and pushing that was successful as a work-around for me

git阶段学习总结的更多相关文章

  1. Git详细学习教程

    作者:gafish https://github.com/gafish/gafish.github.com Git简介 Git 是一种分布式版本控制系统,它可以不受网络连接的限制,加上其它众多优点,目 ...

  2. 分四个阶段学习python并找到一份好工作

    第一阶段 关注公众号"轻松学编程"了解更多. 详细学习资料 需要时间一个月. 1.python概念 ​ python是一种解释型.面向对象.动态数据类型的高级程序语言. ​ 理解: ...

  3. git入门学习(二):新建分支/上传代码/删除分支

    一.git新建分支,上传代码到新的不同分支  我要实现的效果,即是多个内容的平行分支:这样做的主要目的是方便统一管理属于同一个内容的不同的项目,互不干扰.如图所示: 前提是我的github上已经有we ...

  4. git入门学习(一):github for windows上传本地项目到github

    Git是目前最先进的分布式版本控制系统,作为一个程序员,我们需要掌握其用法.Github发布了Github for Windows 则大大降低了学习成本和使用难度,他甚至比SVN都简单. 一.首先在g ...

  5. 代码管理工具之git的学习

    1.代码管理工具git的学习  http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html 2.github的使用帮助   https:// ...

  6. 2.Freshman阶段学习内容的确定

    我刷知乎.在知乎上答题的程序员,不是很牛逼就是更牛逼,说起各种系统.各种系统的各种版本.各种语言.数据库.算法.IT届的各种圣战都有板有眼.信手拈来.头头是道,不得不服.这导致了一些非常严重的问题:我 ...

  7. git的学习笔记(二):git远程操作

    1.创建ssh key ssh-keygen -t rsa -C "your_email@example.com" 执行命令后会在用户的家目录生成.ssh的隐藏文件夹,文件夹里有公 ...

  8. Git操作学习笔记

    根据廖雪峰老师git教程学习整理 这里需要辨析一下概念.Github是代码托管平台,是协作的工具;而Git是版本控制工具.Git不需要联网,在本机就可以使用 集中式版本控制系统与分布式版本控制系统 S ...

  9. FastAdmin 推荐 Git 在线学习教程

    FastAdmin 推荐 Git 在线学习教程 因为 FastAdmin 推荐使用 Git 管理代码,有很多小伙伴对 Git 不是很熟悉. 也苦于找不到好的教程,我就分享一个 Git 在线学习教程. ...

随机推荐

  1. codeforces 622E. Ants in Leaves

    题目链接 给一棵有根树, 每个叶子节点上有一只蚂蚁. 在0时刻蚂蚁开始向上爬, 同一时刻, 除了根节点以外, 一个节点上面不能有2个蚂蚁. 问所有的蚂蚁都爬到根节点需要的最短时间. 因为除了根节点, ...

  2. Protel99se教程六:创建原理图元件库

    在我们平时使用protel99se进行电路以及PCB设计的时候,系统自带的元件库和PCB封装库,只有一小部分,大部份元件的元件库以及封装库,我们都需要自己制作,使用protel99se,我们可以很容易 ...

  3. shouldOverrideUrlLoading相关说明

    给WebView加一个事件监听对象(WebViewClient)并重写其中的一些方法:shouldOverrideUrlLoading:对网页中超链接按钮的响应.当按下某个连接时WebViewClie ...

  4. MySQL对于有大量重复数据表的处理方法

    需要在MySQL的一张innodb引擎的表(tableA)上添加一个唯一索引(idx_col1_u).但是对于每个key(col1)表中已经有大量重复数据.此时,做数据的手工清理,或者SQL处理是非常 ...

  5. AttributeError: 'module' object has no attribute 'Thread'

    $ python thread.py starting at: 2015-08-05 00:24:24Traceback (most recent call last):  File "th ...

  6. Windows Azure 即将更名

     今天我们宣布自2014 年4 月3 日起,WindowsAzure 将更名为Microsoft Azure.这一更名反映了Microsoft 的战略,并显示了Microsoft 专注于将Azur ...

  7. ccMacros

    #ifndef __CCMACROS_H__ #define __CCMACROS_H__ #ifndef _USE_MATH_DEFINES #define _USE_MATH_DEFINES #e ...

  8. Ext JS学习第九天 Ext基础之 扩展原生的javascript对象

    此文来记录学习笔记: •Ext对于原生的javascript对象进行了一系列的扩展,我们把他们掌握好,更能深刻的体会Ext的架构,从而对我们的web开发更好的服务, 源码位置,我们可以从开发包的这个位 ...

  9. IE升级到10.0,VS2010启动调试时报“未能将脚本调试器附加到计算机..”

    IE升级到10.0,VS2010启动调试时报“未能将脚本调试器附加到计算机..” 今天,在调试代码时,调试器弹出提示框,报:未能将脚本调试器附加到计算机XXX上的进程iexplore.exe . 已附 ...

  10. SAP HANA 开发者中心(Developer Center)入门指南