学习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. 【转】DevExpress控件安装

    原文链接: DevExpress控件安装.汉化使用教程 - 田园里的蟋蟀 学习网址: 1.DevExpress控件中文网 2.DevExpress控件中文网使用教程 3.DevExpress控件使用经 ...

  2. 设置windows密码只存在NTLM-Hash下

    修改注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa 下添加名为"NoLMHash"的DWORD值,并设置为1 ...

  3. Understanding and Selecting a SIEM/LM: Correlation and Alerting

    Continuing our discussion of core SIEM and Log Management technology, we now move into event correla ...

  4. ISO14443 ISO15693 ISO18000

    [提要]射频标签的通信标准是标签芯片设计的依据,目前国际上与RFID相关的通信标准主要有:ISO/IEC 18000标准(包括7个部分,涉及125KHz, 13.56MHz, 433MHz, 860- ...

  5. 干I​n​l​a​y​的​生​产​过​程​

    •天线的组成 天线的材料有0.38PET和0.16以及0.3的铝箔组成. 倒封装 •将IC倒装在天线焊盘位置. •方法:先点胶水, 然后把IC对准焊盘(IC一面有凸点),通过热压把IC 固定在焊盘上. ...

  6. 关于Delphi中二维数组的声明和大小调整(对非基本类型数据,小心内存泄漏)

    这是一个实例: procedure TMainForm.Button1Click(Sender: TObject);var  arr:array of array of string;begin  s ...

  7. [转]WIBKIT技术资料

    WebKit结构和流程分析 http://inedx.blog.hexun.com/28830354_d.html webkit架构 http://inedx.blog.hexun.com/28795 ...

  8. 为《31天成为IT服务达人》征求正式名字

    写书时.没细想书的名字,仅仅是在想出本能够让同行或未来同行高速入门的书,如今想来还是应正式给他取个名,请朋友们帮忙哟

  9. 移除GridView中的重复项

    1. The HTML Markup <div> <asp:GridView ID="GridView1" runat="server" Au ...

  10. CodeForces 443B Kolya and Tandem Repeat

    题目:Click here 题意:给定一个字符串(只包含小写字母,并且最长200)和一个n(表示可以在给定字符串后面任意加n(<=200)个字符).问最长的一条子串长度,子串满足前半等于后半. ...