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 1.git是什么? Git是目前世界上最先进的分布式版本控制系统. SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己 ...

  2. git log 常用命令及技巧

    git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...

  3. Git 基础 —— 常用命令

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...

  4. git的常用命令。。

    git的常用命令.. git help <command>  显示command的help git show  显示某次提交的内容 git show $id git co -- <f ...

  5. Git的常用命令记录

    Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支  ...

  6. git/repo常用命令

    Git作为广受欢迎的一款版本控制工具,它该如何通过命令行使用呢?本文为你揭晓浓缩精华精华版:git常用命令一览,含部分repo操作. 代码下载 repo init -- -->初始化需要下载的分 ...

  7. GIT 版本控制常用命令学习汇总

    GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...

  8. Git基本常用命令

    Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...

  9. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

随机推荐

  1. [Effective Modern C++] Item 1. Understand template type deduction - 了解模板类型推断

    条款一 了解模板类型推断 基本情况 首先定义函数模板和函数调用的形式如下,在编译期间,编译器推断T和ParamType的类型,两者基本不相同,因为ParamType常常包含const.引用等修饰符 t ...

  2. C#传递参数大集合

    方法的参数是个值得特别注意的地方.方法的参数传递有四种类型:传值(by value),传址(by reference),输出参数(by output),数组参数(by array).传值参数无需额外的 ...

  3. 使用runtime 实现weex 跳转原生页面

    一.简述 最近项目组打算引入weex,并选定了一个页面进行试水.页面很简单,主要是获取数据渲染页面,并可以跳转到指定的页面.跟之前使用RN 相比,weex 确实要简单很多.从下图中我们可以看到,wee ...

  4. Android性能优化建议

    1.减少View树的高度(多层嵌套) 2.使用<include>重用layout 3.使用<ViewStub>实现View的延迟加载 作用范围:当这个布局在初始化加载时候,不需 ...

  5. apache AH01630: client denied by server configuration错误解决方法

    今天本来是想要在自己本地搭建一个wamp环境用来做一些代码的测试和框架的学习. 鉴于目前工作的时候用到了php5.5,所以就用了wamp-server V2.5版本,安装完成之后配置虚拟主机一直出现4 ...

  6. flask twisted 结合方案

    from flask import Flask, render_template, g app = Flask(__name__) @app.route("/") def inde ...

  7. 解决同一PC同一浏览器session共享问题

    首先session是同一PC同一浏览器共享的.比如如下代码: public void doPost(HttpServletRequest request, HttpServletResponse re ...

  8. C++之单元测试

    以前编写程序从没有做过单元测试的工作,所以在后期会花很多时间去纠错,这也就是软件工程中的2:8定律.最近要完成一个项目,要求要对系统中的主类和主函数作出单元测试的保证,才去查找了相关方面的资料,看过后 ...

  9. thinkphp这样玩关联查询(实例教会你)

    thinkphp实例,内连接实现多表中同时查找,并存在了一个数组中,返回到模板中,模板中volist遍历即可使用多表中的字段 $row=M()->query("select realn ...

  10. read write spinlock

    发一个自己基于 C++11 写的 read write spinlock,在 MinGW 4.8.2 (gcc 4.8 全面支持c++ 11,但由于gcc windows平台 libstdc++ 目前 ...