Git使用

1. git pull    更新服务器代码到本地
a). git pull origin master是将origin这个版本库的代码更新到本地的master主分支

2. git push    将本地代码提交到服务器

3. git log    查看提交信息
a). git log -p    查看历次的log信息及更改情况
b). git log -p -4    查看距现在最近的4次的log信息及更改情况
c). git log frameworks/    查看关于frameworks/目录修改相关的log信息
d). git log --stat    查看log显示文件修改情况
e). git log --stat packages/apps/Contacts/    查看关于packages/apps/Contacts/目录修改相关的log显示的文件修改情况

4. git status    查看工作目录和代码仓库的改动情况

5. git diff 查看工作目录和本地仓库的差异或者本地仓库各个版本的差异
a). git diff packages/apps/Contacts/AndoridManifest.xml    查看工作目录中AndoridManifest.xml和本地仓库中AndoridManifest.xml的不同
b). git diff b46cae3b9a377bcd9cfc249a5778fce647feb961 dc94bf29aab18168e79d6496a89e47dba7a1d494    查看这两个版本的不同(git diff history_old history_current)

6. git commit 提交当前修改内容
a). git commit file1 file2 -m "log message"    提交file1,file2到本地仓库
b). git commit -a -m "log message"    提交所有在Git索引中的改动

7. git add 增加文件到Git索引
a). git add file3 file4    将file3,file4加入到Git索引中

8. git rm 从Git索引移除文件
a). git rm file3    将file3从Git索引中删除,并从本地删除
b). git rm --cached FileName 将文件从Git索引中删除,不删除实际的文件

9. git branch    对分支的增、删、查操作

a). git branch    显示所有本地分支
b). git branch new_branch    在当前版本创建一个名为new_branch的分支
c). git branch -D new_branch    强制删除名为new_branch的分支
d). git branch -r查看服务器上分支
e). git branch -a 显示服务器和本地的所有分支

10. git checkout    在不同的branch切换和还原文件

a). git checkout branch1    切换到branch1分支
b). git checkout origin/cmcc -b cmcc从服务器上pull分支origin/cmcc到本地的cmcc分支
c). git checkout /packages/apps/Contacts/AndroidManifest.xml    会将AndroidManifest.xml文件从上一次提交的版本更新回来,未提交的部分会全部回滚
d). git checkout /package/app/Contacts/ 重新拉这个目录里的文件到本地,如果你不小心把这个目录删除了,可以用这个来恢复
e). git checkout origin/m9002 -b m9002 下载远程分支origin/m9002到本地分支m9002

11. git reset 将当前的工作目录完全回滚到指定的版本号

a). git reset [--fixed] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    只更新索引,不更新工作目录,也就是说所有的本地文件都不会更新
b). git reset [--soft] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    
c). git reset [--hard] 3204f2f0bdfd6ada86c587b8927cdc5a15c586c1    强制回滚到指定版本号,未提交的和此版本之后的更改全部删掉
d). git reset --hard origin/master 强制和服务器上的master同步

12. git merge

a). git merge branch1    将branch1的改动合并到当前所在分支

13. git patch
a). git format-patch -1 打一个当前提交的补丁,也就是最后一次的提交改动
b). git fromat-patch -1 6525c43add803bfee37cf5c1cb573ed8aecf529e    打一个指定具体某一次的补丁
c). git format-patch -2 6525c43add803bfee37cf5c1cb573ed8aecf529e    打基于指定具体某个版本的接连两次的补丁

14. git am

git am xxx.patch提交patch

git am --abort 将git的状态恢复到之前状态就可以继续提交patch了

14. tig linux下Git的界面化工具
a). tig查看当前仓库的所有记录
b). tig packages/apps/Launcher2/查看目录packages/apps/Launcher2/下的所有记录

15. 很多命令都可以加上目录来限制操作内容

16. git config

git config --global color.ui true git使用彩色

git config --global core.editor vim 使用vim编辑器

17. git stash

git stash 隐藏工作目录的改变

git stash pop 恢复工作目录的改变

18. git whatchanged

git whatchanged packages/apps/Contacts/  查看目录packages/apps/Contacts/下的文件修改状况

【转】git命令的更多相关文章

  1. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  2. 工作中常用的git命令

    一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...

  3. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  4. 常look的Git命令

    常用的Git命令   命令  简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply   应用补丁 git am  应用邮件格式补丁 git a ...

  5. ***Linux下使用git命令及github项目

    在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen  ##一直默认就可以了 3.将公钥加入到Github账户 ...

  6. 我所记录的git命令(非常实用)

    一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...

  7. GIT命令行的使用

    新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...

  8. 简明 Git 命令速查表(中文版)

    原文引用地址:https://github.com/flyhigher139/Git-Cheat-Sheet/blob/master/Git%20Cheat%20Sheet-Zh.md在Github上 ...

  9. 常用 Git 命令清单 转

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  10. 日常开发使用GIT命令

    git是一种分布式的版本管理工具,现在我总结下日常使用的git命令 1)检出 git clone 地址 --检出代码 #这里的地址是代码池的地址,如Github或bitbucket 2)增加文件 gi ...

随机推荐

  1. 转载 Deep learning:三(Multivariance Linear Regression练习)

    前言: 本文主要是来练习多变量线性回归问题(其实本文也就3个变量),参考资料见网页:http://openclassroom.stanford.edu/MainFolder/DocumentPage. ...

  2. [转]程序开发基础学习二(C++ Google Style 命名规则)

    无规矩不成方圆,新的岗位就需要服从团队的编码规则.很开心团队用的是Google的C++编码规则,大概看了下Google 的编码规则,正如九天翔雁说的:“Google的 C++ Style Guide远 ...

  3. Bom2016/4/21

    Browser Object Model 浏览器对象模型 open(地址,打开方式) open('http://www.baidu.com','_self')本窗口打开百度 open('http:// ...

  4. CodeForces 689C Mike and Chocolate Thieves (二分最大化最小值)

    题目并不难,就是比赛的时候没敢去二分,也算是一个告诫,应该敢于思考…… #include<stdio.h> #include<iostream> using namespace ...

  5. Mysql笔记3数据库基本操作

    1 创建数据库 create database 数据名称 default character set 编码; 2查看常用的编码校验规则 mysql> show character set; 3删 ...

  6. MFC 窗体背景图片设置

    很多人在做MFC 界面的时候想要给对话框加入背景图片,很多人都会想到在OnPaint()里面来加一段代码来实现,其实这样做并不怎么科学,因为它会导致窗口不断重绘,在很多项目中窗口会闪烁(比如带播放视频 ...

  7. android 没有main函数,怎么找到程序执行入口呢?以及activity主要生命周期的方法说明

    android应用程序,由一到多个Activity组成.每个Activity没有很紧密的联系,因为我们可以在自己的程序中调用其它Activity,特别是调用自己的代码之外生成的Activity,比如a ...

  8. 基于Annotation与SpringAOP的缓存简单解决方案

    前言: 由于项目的原因,需要对项目中大量访问多修改少的数据进行缓存并管理,为达到开发过程中通过Annotation简单的配置既可以完成对缓存的设置与更新的需求,故而设计的该简易的解决方案. 涉及技术: ...

  9. 一道变态的js题

    一道腾讯js面试题 题目如下: f = function() {return true;}; g = function() {return false;}; (function() { if (g() ...

  10. js中的全局函数

    以前没搞懂JS的全局函数,全局函数和window对象的函数不一样.全局函数不属于任何一个内置对象. JS包含以下7个全局函数,用于一些常用的功能:escape(),eval(),isNan(),isF ...