Git的精简用法
作为一名开发人员,提交代码那是家常便饭,那如何有效地利用Git进行提交代码呢?在这里介绍一些常用、必要的命令,几乎够工作中使用了。
(1)git pull 命令:拉取代码,这条命令没啥说的了,在提交代码之前必须要更新最新的代码库;
(2)git stash命令:在git pull后可能会遇到代码冲突的问题,那如何处理比较好呢?首先,输入git stash命令,将自己修改过的代码暂存起来;然后,输入git pull命令更新一下代码;接着,输入git stash apply或者git stash pop命令,它会自动将远程代码和本地代码合并,在该命令后若还是出现代码冲突的话,那么先用git status命令,查看有哪些文件是冲突的,然后通过git diff命令查看冲突的地方,你可以通过vim命令直接修改,也可以通过文件编辑器进行修改,保存修改后的文件,用git add 命令将该文件添加至缓存区;最后输入git stash apply或者git stash pop命令,这样就可以顺利地解决远程代码和本地代码冲突的问题了;
(3)git commit --amend命令:该命令是在上一次最近的git commit的基础重新提交,不过需要注意的是不能运行git pull命令进行更新代码哦,这个命令很有用,在CI中若是需要对某个文件修改多次的话,那么该命令就派上用场了,在流水线上我们会看到相同的jobID携带了不同的序号,例如:jobID.1 、jobID.2、jobID.3……
(4)git push命令:要将代码提及至远程代码库中就需要改命令,刚开始的时候我们会这样输入命令git push origin HEAD:refs/for/master%r=xxx@xxx,r=aaa@aaa;不同的评审人员邮箱之间用逗号隔开,注意了,我这里是在master分支上提交代码,当然你可以根据要求的代码分支进行提交,比如develope分支,就输入git push origin HEAD:refs/for/master%r=xxx@xxx,r=aaa@aaa;要是每次都是这样输入的话,那是不是很费劲呢,有时候还会输入错误呢;那有么有更好的方式呢?当然是有的,接触别名的方式可以简化上述命令,首先找到Git的配置文件.gitconfg文件,在该文件中添加这样一条别名:apple= push origin HEAD:refs/for/master%r=xxx@xxx,r=aaa@aaa 后续直接输入git apple命令就可以完成代码提交了,这样可以很方便地记住,也避免了重复输入复杂的语句而导致输入错误的情况;
(5)git push的时候可能会遇到提示change-id已丢失,出现这种情况时,首先看看代码目录下的.gti/hook下是否存在commit-msg文件,若不存在的话,就根据错误提示将该文件下载下来,然后输入git commit --amend命令,一定要这么做,不然还是不会生成change-id号;若是不存在commit-msg文件的话,那么输入git status命令,查看本地代码是不是出现merged过代码,若是这样的话,那你只好先git stash,然后git reset HEAD^^^,^的数量至少能够让你的代码会退到merged过这条log之前,接着就是git pull命令更新代码,其次就是git stash apply或者git stash pop命令,最后就是git push命令提交代码了。
(6)每次commit一次,是不是都要立马git push呢?其实不然,你可以分多个changeId,多次commit,最后统一一次git push操作即可。
------20191014勉
Git的精简用法的更多相关文章
- Eclipse Git和sourceTree用法
Eclipse Git和sourceTree用法 Eclipse Git: 提交代码到git: 1.team->Repository->pull 若没有冲突: 2.team->com ...
- git的基本用法——我的日常使用
git的基本用法 一,前言 网上有太多关于git的用法说明,而我看得云里雾里,可能是本人比较愚笨.平常时间老问别人又觉得很不好意思,估计大多的同学们都是自己解决.后来我想到了买一本书,淘宝上git书籍 ...
- Git merge && git rebase的用法
Git merge的用法: git merge Dev // Dev表示某分支,表示在当前分支合并Dev分支 git merge -m “Merge from Dev” Dev //-m可以加上m ...
- git clone、git pull和git fetch的用法及区别
声明:码字不易,转载请注明出处,欢迎文章下方讨论交流.Git 常用命令速查表 最近在一个学习小组里学习AI的课程,我们所有的学习资料和homework都放在gitlab上.今天一个小队友从gitlab ...
- Git的一些用法
三. Git的一些用法 1. .gitignore文件 屏蔽文件 : .gitignore文件是告诉Git哪些目录或者文件需要忽略, 这些文件将不被提交; 常用场景 : 写完代码后会执行变异调试等操作 ...
- git日常基本用法
git作为项目管理现在已经是越来越广泛应用,结合自己平时的一些基本操作加上git说明文档里面的一些补充,我总结了一下git的基本用法: mkdir project # 创建项目目录 cd projec ...
- github+git提交 基础用法
git版本管理基本用法: 安装就不用说了 随便一搜 安装完 妥妥的.下边说的是在github从新建一个项目开始: 1.首先打开自己的github地址,如下图所示 点加号 选 New repositor ...
- 问题: 查看某个文件的修改记录| git log 高级用法
参考文章: git查看某个文件的修改历史 5.3 Git log 高级用法 基本步骤 git log --pretty=oneline [文件名] git show [节点] git log 两周高级 ...
- Git stash 常见用法
Git stash git stash这个命令可以将当前的工作状态保存到git栈,在需要的时候再恢复 1.1 git stash 保存当前的工作区与暂存区的状态,把当前的工作隐藏起来,等以后需要的时 ...
随机推荐
- Nginx 部署及配置
Tengine + Luajit2 系统账号及环境配置 $ sudo useradd -g 100 -u 200 user_00 $ sudo groupadd -g 300 www $ sudo u ...
- 第3章 JDK并发包(五)
3.3 不要重复发明轮子:JDK的并发容器 3.3.1 超好用的工具类:并发集合简介 JDK提供的这些容器大部分在java.util.concurrent包中. ConcurrentHashMap:这 ...
- GDAL利用地理坐标读取图像像元值
最近的一个项目需要在电子海图中下载已知水深点,导出点的地理坐标(经纬度).然后在arcgis中打开这些地理坐标输出为shp,利用GDAL读取不同波段的点对应的像元值,从而构建水深和像元值的对应关系. ...
- 独立磁盘冗余阵列-RAID
一.RAID概述 RAID(Redundant Array of Independent Disks)即独立冗余磁盘阵列 磁盘阵列就是.由很多块廉价磁盘 组成的一个容量巨大的卷组.然后在使用不同级别的 ...
- [Effective Java 读书笔记] 第二章 创建和销毁对象 第一条
第二章 创建和销毁对象 第一条 使用静态工厂方法替代构造器,原因: 静态工厂方法可以有不同的名字,也就是说,构造器只能通过参数的不同来区分不同的目的,静态工厂在名字上就能表达不同的目的 静态工厂方法 ...
- vue 入门 ------简单购物车功能实现(全选,数量加减,价格加减)
简易购物车功能(无任何布局 主要是功能) 数量的加减 商品的总价钱 全选与全不选 删除(全选.价格 受影响) <script src="https://cdn.jsdelivr.net ...
- chatrr lsatrr
PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的li ...
- 和内嵌的iframe进行通讯
利用内置iframe进行通讯 1. 在当前网页设置iframe网页(监听iframe发来postmessage消息事件) a. 外部网页接收数据: 回调方法,其中e.data为传入数据: const ...
- js位运算-按位非
正数 取得二进制表示 取反(发现符号位是1,表示负数) 符号位不变,其余位取反 取反后加一 负数 取得负数的二进制表示(即绝对值的二进制反码加一) 取反即可
- drf token刷新配置、认证组件(使用)、权限组件(使用)、频率组件(使用)、异常组件(使用)
目录 一.特殊路由映射的请求 二.token刷新机制配置(了解) 三.认证组件项目使用:多方式登录 1.urls.py 路由 2.views.py 视图 3.serializers.py 序列化 4. ...