以前用命令提代码都是复制粘贴,现在换了工作后,特别是回退代码的命令又忘了,去网上查了好久,心累。特此Mark一下

1. 打patch:
  1.1 git diff >> ljh.patch
  1.2 patch –p1 < ljh.patch
2. 查看本地修改与服务器上的区别,一般都是用beyond compare,其实可以用meld +文件的绝对路径:
  eg:meld /home/longjunhao/src/android-trident-trinity/packages/inputmethods/IMESmartisan/app/src/main/java/com/smartisanos/ime/keyboard/view/IMETextView.java
3. 隐藏修改,常用命令:
  1.1 git stash
  1.2 git stash pop
  1.3 git stash list
  1.4 git stash save tmp
  1.5 git stash apply stash@{0}
  最后这两个命令也类似,不习惯用
4. 查找修改历史:
  git blame –L 92,99 xxx.java
5. 查找某个变量:
  进入要查找的路径下执行:grep -rw “xxx” ./或者grep -rw 'xxx' ./
  如果不是全词查找可以为:grep -r "xxx" ./
  如果需要把查找的内容导出到文件,可以执行:grep -r "xxx" ./ > ~/longjunhao.log &

6. 查找某个文件的提交记录:gitk 文件
  eg: gitk app/src/main/java/com/smartisanos/ime/view/popwin/SoftComposingText.java
7. 提代码流程:
  1.1 git pull
  1.2 git status
  1.3 git add
  1.4 git status
  1.5 git commit –m “提交备注”
  1.6 二次提交:git commit –amend
  1.7 二次提交只修改commit时:git commit --amend –s
  1.8 git push 或者 repo upload .eg: git push EMUI HEAD:refs/for/master 或者git push -u origin master
8. 更新代码常用命令:
  1.1 repo sync -c packages/app/Mms【根路径下跟新某个模块代码】、
  1.2 git pull 在模块路径下更新拉代码所在的主线代码
  1.3 git pull smartisanos trinity_dev
  1.4 git pull --rebase smartisanos trinity_dev
 【注】代码合入之后,再git pull跟新代码时,【如果没有新建分支,直接在主线上提交代码,pull的时候最好加下--rebase,这样当代码merged之后,更新代码再git status会显示本地代码和主线代码一致。eg:用git pull --rebase smartisanos trinity_dev而不是用git pull smartisanos trinity_dev 其中smartisanos trinity_dev是分支名】
9. 撤销代码:
  1.1 git reset --soft HEAD^ 撤销已经提上但没有合入的代码
  1.2 git reset 撤销已经add的但是没有提上的代码
  1.3 git reset --hard HEAD^是什么意思呢?
10. 编译代码:
  1.1 在Android.mk路径下:mm 或者mma
  1.2 make Mms -j12(需要在Android工程的根路径下,执行make之前,先要执行:source build/envsetup.sh 和 lunch选项目)
11. ubuntu系统下安装软件:
  1.1 安装deb软件:sudo apt-get -f install
  1.2 解压zip:unzip FileName.zip
12. 安装apk:
  1.1 adb install -r
  1.2 adb push ,如果用push需要重启,最近刚发现不重启也行,直接杀死进程即可:eg命令1:adb shell am force-stop com.smartisanos.ime或者用命令2:adb shell pkill ime是杀死所有包含ime的进程
13. 分支相关命令:
  1.1 新建分支:repo start ljh .
  1.2 切换分支:git checkout ljh
  1.3 强制切换其他主线分支:eg: git co smartisanos/trident-trinity -b trident-trinity
  1.4 git fetch会把远程服务器上所有的更新都拉取下来
  1.5 git branch –vv
  1.6 git branch –a
  1.7 其中git co smartisanos/trident-trinity -b trident-trinity :是基于远程的smartisanos/trident-trinity分支新建一个trident-trinity分支。即: git checkout 服务器分支 -b 本地分支
14. 查找crash堆栈的发生时间:
  date -d @时间(去掉后三位)eg:date -d @1523673060
15. adb logcat -s TAG 用命令查看log
  参考: https://blog.csdn.net/listening_music/article/details/7518990
16. 用命令截取手机屏幕:adb shell screencap -p /sdcard/1.png
17. 在Androidstudio annotate上看不到历史提交记录,在工程路径下执行git fetch --depth 100000 就行了
18. 服务器的分支更新:git fetch --all 或者 git fetch
19. 查看命令的记录 :history
20. 查找命令执行的历史记录:history。如果想直接执行历史记录中的某一个命令:ctr+r,然后输入模糊匹配,确定后回车即可
21. github 提代码命令
  1.1 git commit -m "add AIDL demo"
  1.2 git push -u origin master
22. 如果多人多个路径同时提交代码时,尽可能的多执行rebase操作,如下命令:
  1.1 git pull --rebase origin t11
  1.2 git status ./
  1.3 git add .
  1.4 git status ./
  1.5 git pull --rebase origin t11
  1.6 git commit
  1.7 git push origin HEAD:refs/for/t11
  1.8 git pull --rebase origin t11
23. 查看settings中的属性:
  eg:通过android.provider.Settings.Global.putString(mContext.getContentResolver(), "ebenInputMode", ebenInputMode)来写到setting中,可以在cmd中通过如下命令获取 adb shell settings get global ebenInputMode
24. 回退版本:
  方法一、git log后找到要回退的commitId,执行git reset --hard commitId
  方法二、复制gerrit中的“git checkout”命令,在模块中执行即可。
25. adb shell ps -e 查看当前运行的进程
26. adb shell dumpsys package com.ebensz.enote.widget | findstr versionName  查找版本号 。adb shell dumpsys package com.ebensz.enote.widget 查找配置信息
27. 某个模块monkey测试命令:adb shell monkey -p com.ebensz.copybook --throttle 500 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes --monitor-native-crashes -v -v -v 1000000 > D:\ljh\bug\log\monkey\copybook\monkey.txt
28. 在系统SystemProperties中有属性persist.sys.touristabled,通过adb 命令可以动态的修改属性,同时也可以用命令启动某个应用,如下所示:
   28.1:在SystemProperties设置属性persist.sys.touristabled的值为able:adb shell setprop persist.sys.touristabled able
  28.2:获取SystemProperties中属性persist.sys.touristabled的值:adb shell getprop persist.sys.touristabled
  28.3:通过以下命令启动应用:adb shell am start -n com.ebensz.tourist/com.ebensz.tourist.GuideFragmentActivity

这篇文章不错:http://blog.csdn.net/hudashi/article/details/7664464

git 提代码时的相关命令,Mark一下的更多相关文章

  1. git commit 代码时提示: Warning: Your console font probably doesn‘t support Unicode.

    git 提交代码是会遇到以下问题, git commit 代码时提示: Warning: Your console font probably doesn‘t support Unicode. If ...

  2. git创建远程项目并进行代码管理及相关命令

    1.windows下载Git     https://git-scm.com/downloads 然后一路点击安装 2.登录github,点击右上角创建仓库 3.在本地项目根目录下 输入如下命令 ss ...

  3. 架构(四)Git简介,安装以及相关命令SourceTree

    一 Git介绍 1.1 Git是什么? Git是一个分布式版本控制软件: 版本控制:假如开发人员开发了一个a功能,结果项目经理觉得不够需要修改,开发人员又改成了b功能,后来又改成了c功能,但是最终项目 ...

  4. Git操作简单入门及相关命令

    说明:本文内容主要来自文末参考链接内容,此文仅作学习记录.如有转载,请到文末参考链接处. 1 基本概念理解 1.1 Git介绍 Git是分布式版本控制系统. 集中式VS分布式,SVN VS Git. ...

  5. git push代码时的'git did not exit cleanly (exit code 1)'问题解决

    在利用git管理本地发布的galleryLeftOrRight插件项目时,按照git的使用方法:先commit→master,再 push,发现提示错误git did not exit cleanly ...

  6. Git与远程reposiory的相关命令

    问题1:Git如何同步远程repository的分支(branch) 某天,小C同学问我,为啥VV.git仓库里面本来已经删除了branchA这个分支,但是我的mirror中还是有这个分支呢? 分析: ...

  7. [转]git提交代码时遇到代码库有更新以及本地有更新的解决方法

    本文转自:https://blog.csdn.net/myphp2012/article/details/80519156 在多人协作开发时,经常碰到同事把最新修改推送到远程库,你在本地也做了修改,这 ...

  8. git提交代码时出现was rejected by remote错误

    git常见问题 git是大家在公司基本都项目管理工具,有一次在改了一个bug提交远程提交就出现问题了. 解决方案 首先这个是远程提交的时候被项目权限拦截掉了,一般在我们都用配置ssh公钥的方式操作,那 ...

  9. idea使用Git提交代码时忽略指定文件或文件夹

    简述 使用idea编写代码并使用git作为版本控制器的时候,常常不需要提交配置文件以及一些其他不需要提交的文件,可以使用.ignore插件来在上传的时候忽略一些文件或文件夹. 安装 注意:安装完成之后 ...

随机推荐

  1. OSPF多区域原理与配置

    OSPF多区域原理与配置 目录 一.OSPF多区域生成 1.1.生成OSPF多区域的原因 二.OSPF的三种通信量 2.1.域内通信量 2.2.域间通信量 2.3.外部通信量 三.OSPF的路由器类型 ...

  2. 第三方模块npm

    npm介绍 npm 全名 node package manager   node包管理工具,增删查改 如果npm操作太慢,可以安装npm镜像 npm的下载 比如全局下载一个jquery文件,全局下载的 ...

  3. 从零开始学前端,React框架背后的核心机制和原理JSX

    什么是React React是起源于Facebook的一个前端框架,用于构建用户界面的JavaScript库,Facebook用来探索一种更加高效优雅的Javascript MVC框架来架设Insta ...

  4. 使用 Docker 秒速搭建多版本 PHP 开发环境

    目录 目标 下载 代理设置 配置环境 PHP 7.2.x,占用本地端口 8081 PHP 5.6.x,占用本地端口 8082 端口映射 local.php72.com -> 127.0.0.1: ...

  5. 5、cobbler搭建本地saltstack yum仓库

    5.1.安装cobbler: 参考"linux运维_集群_01(35.cobbler自动化安装操作系统:)" 5.2.cobbler yum源常用操作命令: cobbler rep ...

  6. 96、linux之rpm包定制

    96.1.rpm包定制介绍: 编译安装软件,优点是可以定制化安装目录.按需开启功能等,缺点是需要查找并实验出适合的编译参数,诸如MySQL之类的软件编译耗时过长. yum安装软件,优点是全自动化安装, ...

  7. jquery combo.select. 下拉选择插件

    演示地址:http://www.dowebok.com/demo/179/index5.html 引入js.css 即可使用,效果如图所示: 这个插件的好处是可以在输入框里面输入数据 自动检索内容. ...

  8. AcWing 1127. 香甜的黄油

    农夫John发现了做出全威斯康辛州最甜的黄油的方法:糖. 把糖放在一片牧场上,他知道 N 只奶牛会过来舔它,这样就能做出能卖好价钱的超甜黄油. 当然,他将付出额外的费用在奶牛上. 农夫John很狡猾, ...

  9. linux学习之路第七天(时间日期类指令详解)

    时间日期类 1.date指令 date指令 - 显示当前日期 基本语法 1)date (功能描述:显示当前时间): 2) date + %Y (功能描述:显示当前年份) 3)date+%m( 功能描述 ...

  10. 【Azure 应用服务】Azure Function App使用SendGrid发送邮件遇见异常消息The operation was canceled,分析源码逐步最终源端

    问题描述 在使用Azure Function App的SendGrid Binging功能,调用SendGrid服务器发送邮件功能时,有时候遇见间歇性,偶发性异常.在重新触发SendGrid部分的Fu ...