git的使用(开发常用到的)
git的使用
1、git add text.c
2、git commit
3、git push #1 jps HEAD:refs/for/#2 //#1:git remote -v :(jps)jgs ssh://chaimian@192.168.1.240:29419/repositories/KaiOS/kernel/msm-4.9 (fetch)jgs ssh://chaimian@192.168.1.240:29419/repositories/KaiOS/kernel/msm-4.9 (push)//#2:例如这里的:(Q2806_KAIOS_DEV_BSP_V1) git branch -a :remotes/jgs/Q2806_KAIOS_DEV_BSP_V1remotes/m/master -> jgs/Q2806_KAIOS_DEV_BSP_V1git push jps HEAD:refs/for/Q2806_KAIOS_DEV_BSP_V1
更新仓库:
1、git stash //把修改的文件保存在(工作目录下隐藏的WIP)
2、git pull //看第10的操作,更新仓库
3、git stash list //查看WIP目录下的缓存列表记录
3、git stash pop //把自己修改的文件,从工作目录下隐藏的WIP中拉回来 —— git stash pop stash@{0}
1、git status
当前不在任何分支上。
尚未暂存以备提交的变更:(使用 "git add <文件>..." 更新要提交的内容)(使用 "git checkout -- <文件>..." 丢弃工作区的改动)修改: ../../../../arm/configs/msm8937go-perf_defconfig修改: ../../../../arm/configs/msm8937go_defconfig修改: ../../../../../drivers/input/Kconfig修改: ../../../../../drivers/input/Makefile未跟踪的文件:(使用 "git add <文件>..." 以包含要提交的内容)../../../../../drivers/input/hall_sensor.c修改尚未加入提交(使用 "git add" 和/或 "git commit -a")
2、git stash //把修改的文件保存在(工作目录下隐藏的WIP)
Saved working directory and index state WIP on (no branch): 9f10bba [1233][Keyborad][null][null][null]
HEAD 现在位于 9f10bba [1231231][Keyborad][null][null][null]
3、git log --decorate --graph --oneline --all (显示所有的分支,以分支图显示)
* 5e628d4 (refs/stash) WIP on (no branch): 9f10bba [Q12316][Keyborad][null][null][null]
|\
| * 921fc2b index on (no branch): 9f10bba [312311[Keyborad][null][null][null]
|/
* 9f10bba (HEAD) [3131][Keyborad][null][null][null]
* de31c1c [3][Key12312borad][null][null][null]
| * f70ee0e (m/master, jgs/Q3_KA123IOS_DEV_BSP_V1) [Q1][K321EYB313RD][null][null] add keyboard function
|/
4、git reset --hare 1b31c29(分支) //恢复到这个分支
5、git show -p 1b31c19 //查看这个分支的修改
6、git stash pop stash@{0}
当前不在任何分支上。
尚未暂存以备提交的变更:(使用 "git add <文件>..." 更新要提交的内容)(使用 "git checkout -- <文件>..." 丢弃工作区的改动)修改: ../../../../arm/configs/msm8937go-perf_defconfig修改: ../../../../arm/configs/msm8937go_defconfig修改: ../../../../../drivers/input/Kconfig修改: ../../../../../drivers/input/Makefile未跟踪的文件:(使用 "git add <文件>..." 以包含要提交的内容)../../../../../drivers/input/hall_sensor.c修改尚未加入提交(使用 "git add" 和/或 "git commit -a")
丢弃了 stash@{0} (5e628d404238882f593a7e3c6ac2eb99cdfc8e38)
相当于撤回:3、 git stash
7、gitk ./ //查看修改
8、git checkout – tect.c //撤回tect.c 的修改
9、git merge [branch]
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ vi hall_sensor/hall_sensor.c
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ git commit -a
[分离头指针 f4d4894] [T8001][test][null][null][null]1 file changed, 1 insertion(+)
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ git reflog --all
f4d4894 HEAD@{0}: commit: [T8001][test][null][null][null]
1601c95 HEAD@{1}: commit: [T8001][test][null][null][null]
3996bc0 refs/remotes/jgs/T8001_SM4350_DEV_V2@{0}: fetch jgs --no-tags +refs/heads/T8001_SM4350_DEV_V2:refs/remotes/jgs/T8001_SM4350_DEV_V2: storing head
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ git merge 3996bc0
Already up-to-date.
10、git pull (jgs :git remote -v 远程的分支,T8001_SM4350_DEV_V2 本地的分支:git branch -a)
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ git branch -a
* (非分支)remotes/jgs/T8001_SM4350_DEV_V2remotes/m/master -> jgs/T8001_SM4350_DEV_V2
chen@chen:/mnt/sdb1/share/protect/t8001V2/kernel/msm-5.4/drivers/input$ git pull jgs T8001_SM4350_DEV_V2
来自 ssh://192.168.1.240:29419/repositories/SM4350/kernel/msm-5.4* branch T8001_SM4350_DEV_V2 -> FETCH_HEAD
Already up-to-date.
11、git diff (查看修改的内容)
git diff
git diff --cached
git diff HEAD
12、如果一不小心git pull,但是代码是有错误的,我们需要:
git pull jgs Q2806_KAIOS_DEV_BSP_V1 //拉错了代码
git reflog0f8d4eb HEAD@{0}: pull jgs Q2806_KAIOS_DEV_BSP_V1: Merge made by the 'recursive' strategy.86ec014 HEAD@{1}: commit: [Q2806][charge][1093609][null]adjust charging parameters9d79b11 HEAD@{2}: reset: moving to HEAD^69fd305 HEAD@{3}: commit: [Q2806][charge][null][null] modify the constant voltage and current of the battery
git reset --hard 86ec014 //恢复到我们想要的分支
13、撤销我们不要的commit,add
1、git log
2、git reset --soft HEAD~1 //撤回第一次的提交 git commit
3、git status //查看仓库的状态
4、git reset HEAD 文件 //撤回我们的git add
5、git status
git的使用(开发常用到的)相关推荐
- Git的基本概念/常用命令及实例
Git的基本概念/常用命令及实例 什么是仓库 在 Git 的概念中,仓库,就是你存在.git目录的那个文件夹内的所有文件,包括隐藏的文件,Git程序会再当前目录以及上级目录查找是否存在.git文件,如 ...
- git日常使用的常用命令总结
git日常使用的常用命令总结 git 是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常 ...
- Git的安装以及常用的命令总结
Git的安装以及常用的命令总结 一.Git的概述 二.Git的安装 三.Git的使用命令 四.Git的分支操作 五.Git团队的协作机制 (一).Git的概述 Git是一个免费的.完全开源的分布式版本 ...
- 安卓开发常用软件及环境配置
安卓开发常用软件及环境配置 修改文件权限 chmod u=rwx,g=r,o=r file.txt 安卓studio代理配置 systemProp.http.proxyHost=127.0.0.1 s ...
- mac下后端开发常用软件
简介 换了台macbook,接下来分享下我在mac里安装的常用软件,也方便自己以后重装 Intellij IDEA Java开发神器,开发效率高,功能非常强大,社区版阉割了太多功能,满足不了开发需求, ...
- iOS开发常用三方库、插件、知名博客
TimLiu-iOS iOS开发常用三方库.插件.知名博客等等,期待大家和我们一起共同维护,同时也期望大家随时能提出宝贵的意见(直接提交Issues即可). 持续更新... 版本:Objective- ...
- Java 程序员开发常用的工具(全)
Java 程序员开发常用的工具 作为一名Java程序开发人员,可以的选择集成开发环境IDE(Integrated Development Environment)非常多,得益于Java是一门开源语言. ...
- Git教程-帮助开发人员更好的运用Git | 云效
导读:Git教程-帮助开发人员更好的运用Git,Git 作为分布式版本控制工具,近年来越来越受欢迎,很多公司.开发人员开始使用 Git 来替代 SVN.本片文章重点介绍了关于云效对开发人员使用Git更 ...
- 软件开发常用工具汇总百度云网盘
开发常用软件 全部百度云资源 直接可以下载使用 产品原型设计工具:Axure 添加链接描述密码:7iq3 win终端工具cmder cmder 密码:gaf0 Navicat Navicat密码:l4 ...
最新文章
- Alpha版验收通过
- 上海银行:转型创新网银与应用质量双赢
- 小白们应当知道的配置系统变量PATH 的小技巧。
- win10如何使用pip下载适合自己python版本的matplotlib?(亲测有效)
- 8. Leetcode 26. 删除有序数组中的重复项 (数组-同向双指针-快慢指针)
- json 反序列化 父子类型_Jaskson精讲第7篇-类继承关系下的JSON序列化与反序列化JsonTypeInfo...
- 内联函数的声明和定义
- (无限级、递归)DropDownList显示树形分类
- 月薪5万的产品经理都把什么能力放在第一位?
- ASP从HTML标签中提取中文
- 董明珠为什么做不好手机?
- json字符串使用注意问题
- mysql for mac
- 寻找两个正序数组中的中位数 数组
- 英语语法——定语从句
- python爬虫之一:爬取网页小说(魂破九天)
- Koo叔说Shader—Shader简介
- 黑客帝国角色 之 先知的另类解读
- 智慧水利整体解决方案2022(ppt可编辑)
- python水印倾斜_【python PIL学习】给照片打水印
热门文章
- 数据分析---论文数据统计
- Libra是一个纸老虎吗?Libra技术专业解析 | 技术帖
- 7本关于学习科学的最佳书籍
- Python判断两个字符串是否为父子集
- 检测到域名被墙如何解决?域名被墙怎么快速恢复?
- 2018 (天津)新能源汽车三电系统技术发展交流大会暨汽车轻量化技术开发与材料应用论坛
- mysql workbench是什么意思_MySQL Workbench是干什么的?
- 晨枫U盘维护工具的ISOLINUX模式可加载磁盘映像的探索及USB-ROM引导后安装系统的相关问题
- 关于日历实现代码里0x04bd8, 0x04ae0, 0x0a570的说明
- 基于博弈论的出租车系统效率优化