Git使用详细教程(二)
- 分支
其实在项目clone下来后就有一个分支,叫做master分支。新建分支的步骤:右键项目→Git→Repository...→Branches...
master分支应该是最稳定的,开发的时候,建议不要直接在这个分支上操作。
然后再弹出的信息框中选择 New Branch ,然后输入分支名称,确定。
其实点击右下角也可以打开这个窗口:
比如我这里新建了两个分支(branch_lalala和new_branch_test),可以看到这里面的几个分支。
说说这里的东西,首先Local Branches,这个是本地的分支,前面已经提到过,Git是有两套版本库的,这个就是在本地版本库中的分支,然后Remote Branches这是远程版本库中分分支。本地的版本库中的分支可以互相之间切换的。点击Local Branches下的分支名称,然后选择Checkout就切换过去了。
Remote Branches就是远程版本库里面的分支,在这里可以Checkout as new local branch,这样这个分支就到本地的Local Branches里面来了。
- 分支的合并
假如出现这种情况,公司新来了两个开发,张三和李四,他们在同时clone了master分支,然后,在自己开发的时候各自建立了自己的分支(dev_zhangsan,dev_lisi),然后,他们各自完成了自己的功能。然后,假设他们都更改了一个文件,假设叫X.txt。那么在合并分支的时候就会出现问题,X.txt可能就会出现冲突。比如下面:
这个窗口关掉了也不要紧,可以通过:右键项目→Git→Resolve Conflicts...重新打开。
解决冲突,Accept Yours,Accept Theirs,或者Merge...在Merge中可以很好的处理冲突的。
- 版本回退和恢复
下面说说一下版本的回退和恢复的事。比如这里MergeFiles下面有两个文件。
然后我删除一个,比如删除newFile.txt。然后commit可以看到文件的修改。
在newFile上点右键,选择Revert
然后文件就回来了。
如果删除文件后又commit了的话。需要先打开History
右键项目→Git→Show History...打开历史,历史操作是按照时间从新到旧排序的。
然后进行如下操作。右击操作记录→Show All Affected Files
然后再弹出的对话框中,选择被删除的文件,右键,选择Revert Selected Changes。
下面的选择,如果选择Existing ChangeList的话,恢复的文件就会加入到ChangeList中,那么下次commit的时候,这个文件就会作为new file处理。
为了简单起见,选择Exiting Changelist即可。
如果选择New Changelist的话,提交的时候就会出现可以选择的Change list,可以选择性的提交。如下:
如果删除文件后,又push了,怎么恢复呢。
其实也可以打开历史操作查看,跟上面的差不多了。
至此整个使用操作过程都讲完了,希望对各位有点帮助。
参考文件
1:http://www.bootcss.com/p/git-guide/
2:https://git-scm.com/book/zh/v2
完整的内容我已经整理成PDF,0资源费下载,猛戳我下载吧
-------------------------------------------------------------------
Git使用详细教程(二)的更多相关文章
- Git使用详细教程(一)
很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...
- 项目版本管理Git使用详细教程
前言 记得刚开始做项目开发的时候都是一个人完成一个项目,单打独斗的开发,也不知道什么是团队开发,没有这个概念,随着工作后来知道公司里项目都是团队开发,这个时候这么多人怎么开发一个项目呢,难道用u盘拷贝 ...
- git超详细教程
GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化Gi ...
- git超详细教程【转】
转自:http://blog.csdn.net/liuwengai/article/details/52072344 GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流 ...
- [置顶]
Git学习总结(1)——Git使用详细教程
一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...
- 5.Git使用详细教程
转自:https://www.cnblogs.com/seven-ahz/p/7712125.html 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的 ...
- git全套详细教程
git安装 首先,我们要去git的官网下载一个git安装包,双击到无关紧要的步骤我就不详细描述了,直接介绍我们关键的步骤. 选择git包含的内容和打开方式 选择都很清晰,具体情况我不是很清楚,不过选择 ...
- Git使用详细教程(9):git log
目录 格式化 检索 显示最近提交 Git中使用git log查看提交日志 如果日志很多的话,默认会以分页方式展示 空格可以翻下一页,ctrl+b翻上一页,q退出 格式化 如果想获取每条日志的简要信息, ...
- Git使用详细教程(1):工作区、暂存区、本地仓库、远程仓库
之前的写过一篇如何在服务器上搭建Git服务Git服务器搭建,接下来的一段时间,我将详细的讲解Git的使用.看如下一张图片,本篇主要理解一些基本概念. 图中几个名词的意思如下: workspace: 工 ...
随机推荐
- Database Replay和Consolidated Database replay
简介 在数据库的迁移和升级场景中,我们经常会遇到一个问题:在做压力测试时,如何模拟真实的业务压力,解决这个问题的方法有很多,比如:应用方开发模拟程序或者使用压力测试工具模拟,如load runner, ...
- [linux]阿里云主机的免登陆安全SSH配置与思考
公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆. 一 理论概述 SSH介绍 S ...
- 对Castle Windsor的Resolve方法的解析时new对象的探讨
依赖注入框架Castle Windsor从容器里解析一个实例时(也就是调用Resolve方法),是通过调用待解析对象的构造函数new一个对象并返回,那么问题是:它是调用哪个构造函数呢? 无参的构造函数 ...
- Android混合开发之WebViewJavascriptBridge实现JS与java安全交互
前言: 为了加快开发效率,目前公司一些功能使用H5开发,这里难免会用到Js与Java函数互相调用的问题,这个Android是提供了原生支持的,不过存在安全隐患,今天我们来学习一种安全方式来满足Js与j ...
- Angular企业级开发-AngularJS1.x学习路径
博客目录 有链接的表明已经完成了,其他的正在建设中. 1.AngularJS简介 2.搭建Angular开发环境 3.Angular MVC实现 4.[Angular项目目录结构] 5.[SPA介绍] ...
- NET Core-TagHelper实现分页标签
这里将要和大家分享的是学习总结使用TagHelper实现分页标签,之前分享过一篇使用HtmlHelper扩展了一个分页写法地址可以点击这里http://www.cnblogs.com/wangrudo ...
- zookeeper源码分析之六session机制
zookeeper中session意味着一个物理连接,客户端连接服务器成功之后,会发送一个连接型请求,此时就会有session 产生. session由sessionTracker产生的,sessio ...
- 用FSM一键制作逐帧动画雪碧图 Vue2 + webpack
因为工作需要要将五六十张逐帧图拼成雪碧图,网上想找到一件制作工具半天没有找到,就自己用canvas写了一个. 写成之后就再没有什么机会使用了,因此希望有人使用的时候如果遇到bug了能及时反馈给我. 最 ...
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- swift 中关于open ,public ,fileprivate,private ,internal,修饰的说明
关于 swift 中的open ,public ,fileprivate,private, internal的区别 以下按照修饰关键字的访问约束范围 从约束的限定范围大到小的排序进行说明 open,p ...