分布式版本控制系统Git-----9.Git 使用的小技巧
1. git push -u orgin master【后面push的时候可简写】
第一次push的时候-u后面加上<本地分支名><远程分支>,第二次push的时候就只需要写git push就可以了,但是前提是你远程分支只有一个。例子如下:
第一次:
第二次:
2. git commit -a【会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过git add步骤】
图片所示我修改了testCommit.txt文件,此文件之前是已经跟踪过的,但是我commit提交会报错,所以需要commit后需要加一个-a,就省去了再次放到暂存区的步骤。
3. .gitignore 忽略文件【一开始就要想好需要过滤哪些文件与目录,不然push之后处理起来很麻烦】
git rm --cached file:从staged区中移除文件,但文件保留在磁盘上
(git rm 来删除文件,同时还会将这个删除操作记录下来;
用 rm 来删除文件,从本地删除,没有将其从 git 的记录中剔除。)
4.git log --stat:显示改变的概要【后面的参数还有很多,我只是列出了个人觉着信息比较有用的参数,具体查看log的参数】
git log --pretty=format:"%h - %an, %ar : %s"
5. git stash 【放入暂存区】
当你发现你之前的代码有bug需要更改需要回到上一个commit而你又不想放弃现在的进度或者想pull最新代码但是不想commit,这个命令就派上用场了。改完bug之后再git stash pop, 继续原来的工作。
6. 自动提示
git co<tab><tab>
git log --p<tab><tab>
7. 从远程仓库抓取数据(只抓取,不合并) git fetch[远程仓库名]
从远程仓库抓取并合并分支 git pull
下面这张图真的不错哦!便于理解!
8. Git中的分支(branch),其实本质上仅仅是个指向commit的可变指针
Git会使用master作为分支的默认名字
在每次提交的时候都会自动向前移动
【想要理解这个问题,可以去git目录下面自己看下文件里面的内容】
9. HEAD 特别指针,是一个指向你正在工作中的本地分支的指针。
git branch命令,仅仅是建立了一个新的分支,但不会自动切换到这个分支中去
(1)Git中的分支实际上仅是一个包含所指对象校验和(40个字符长度SHA-A字串)的文件
说白了,新建一个分支就是向一个文件写入41个字节(外加一个换行符)那么简单,所以成本要低很多
(2)Git的实现与项目复杂度无关,它永远在几毫秒的时间内完成分支的创建和切换
(3)因为每次提交时候都记录了祖先信息(parent对象),所以以后要合并分支的时候,寻找合并基础(共同祖先)的工作已经完成了一大半,实现起来非常容易。
【这个问题同上,自己查看一下文件就理解了】
10.当做了一些修改并想提交到远程时,远程又有了新的更新,这时候push会 失败,解决方法两种:
Git fetch 抓取新的内容
Git merge orgin/master 手工合并
或者
Git pull orging master 抓取最新内容并自动合并
分布式版本控制系统Git-----9.Git 使用的小技巧的更多相关文章
- g4e基础篇#2 Git分布式版本控制系统的优势
g4e 是 Git for Enterprise Developer的简写,这个系列文章会统一使用g4e作为标识,便于大家查看和搜索. 章节目录 前言 1. 基础篇: 为什么要使用版本控制系统 Git ...
- 开发效率优化之Git分布式版本控制系统(一)
阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将先从Git分布式版本控制系统来阐述开发效率优化 一,企业 ...
- Git分布式版本控制系统(上)
Git分布式版本控制系统(上) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...
- GIT分布式版本控制系统
Git诞生历史 我想大家还记得Linus torvalds在1991年时发布了Linux操作系统吧,从那以后Linux系统变不断发展壮大,因为Linux系统开源的特性,所以一直接受着来自全球Linux ...
- Git分布式版本控制系统学习笔记
Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.[4] Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本 ...
- [.net 面向对象程序设计进阶] (27) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git
[.net 面向对象程序设计进阶] (26) 团队开发利器(六)分布式版本控制系统Git——在Visual Studio 2015中使用Git 本篇导读: 接上两篇,继续Git之旅 分布式版本控制系统 ...
- [.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit
[.net 面向对象程序设计进阶] (26) 团队开发利器(五)分布式版本控制系统Git——图形化Git客户端工具TortoiseGit 读前必备: 接上篇: 分布式版本控制系统Git——使用GitS ...
- [.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境
[.net 面向对象程序设计进阶] (25) 团队开发利器(四)分布式版本控制系统Git——使用GitStack+TortoiseGit 图形界面搭建Git环境 本篇导读: 前面介绍了两款代码管理工具 ...
- Git(分布式版本控制系统)在Windows下的使用-将代码托管到开源中国(oschina)
一.Git是什么? Git --- The stupid content tracker, 傻瓜内容跟踪器.Git是目前世界上最先进的分布式版本控制系统. 二.SVN与Git的最主要的区别? ...
- Git ——分布式版本控制系统
Git ——分布式版本控制系统 本人git主页地址:https://github.com/lendoon/test.git git使用心得:初次接触git在课堂上,老师给我们提供了一个代码托管的场所, ...
随机推荐
- 关于ABP——领域服务的思考
我在刚接触ABP的时候一直有一个疑问--有了应用服务,为什么还需要领域服务呢? 领域服务和应用服务对比 领域服务 应用服务 返回值 Entity DTO 被表现层调用 不可以(非强制) 可以 在ABP ...
- shapeless官方指南翻译写在前面
目录 前言 Shapeless简介 The Type Astronaut's Guide to Shapeless简介 总结 一.前言 在我的2016,感恩.乐观.努力一文中,说2017 ...
- visual studio 2010 无法连接到ASP.NET Development Server
在点击运行项目时,生成成功.但是页面没有弹出来,弹出个提示框,无法连接到 ASP.NET Development Server. 网上我看到说关闭掉防火墙,可是再关掉防火墙后还是不行.但是其他的项目又 ...
- WebStorm、IntelliJ IDEA、JetBrains、PhpStorm、RubyMine、PyCharm
JetBrains旗下的产品: IntelliJ IDEA偏重于Java开发,旗舰产品,它可以通过(捆绑的或可下载的)插件的方式提供WebStorm和PhpStorm所有的功能.支持Scala和Gro ...
- angular1.x 脏检测
写在前面 双向绑定是angular的大亮点,然后支撑它的就是脏检测.一直对脏检测都有一些理解,却没有比较系统的概念. 以下是我阅读网上博文以及angular高级程序设计的理解与总结. 接收指导与批评. ...
- 《DSP using MATLAB》示例Example6.4
图形表达如下: 代码: b = [1, 0, 0, 0, 16+1/16, 0, 0, 0, 1]; [b0, B, A] = dir2cas(b, 1) 运行结果: 写成公式为
- (二)Harbor WEB的使用
接上一篇<安装Harbor>,安装好之后,接下来我们就进行Harbor web界面的操作吧! 转载请标明出处:http://www.cnblogs.com/huangjc/p/62704 ...
- overflow属性及其在ios下卡顿问题解决
overflow属性:http://www.w3school.com.cn/cssref/pr_pos_overflow.asp overflow:scroll/auto;在手机页面滑动不流畅问题: ...
- cocoaPods第三方库使用详解
终端上安装了cocoapods后,打开终端输入下面命令: cd /Users/Sivek_lin/Desktop/AFNTest/AFNTest touch podfile pod search af ...
- iOS 自定义layer的两种方式
在iOS中,你能看得见摸得着的东西基本都是UIView,比如一个按钮,一个标签,一个文本输入框,这些都是UIView: 其实UIView之所以能显示在屏幕上,完全是因为它内部的一个图层 在创建UIVi ...