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: 工 ...
随机推荐
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- MIP改造常见问题二十问
在MIP推出后,我们收到了很多站长的疑问和顾虑.我们将所有疑问和顾虑归纳为以下二十个问题,希望对大家理解 MIP 有帮助. 1.MIP 化后对其他搜索引擎抓取收录以及 SEO 的影响如何? 答:在原页 ...
- ASP.NET Aries 入门开发教程5:自定义列表页工具栏区
前言: 抓紧时间,继续写教程,因为发现用户期待的内容,都在业务处理那一块. 不得不继续勤劳了. 这节主要介绍工具栏区的玩法. 工具栏的默认介绍: 工具栏默认包括5个按钮,根据不同的权限决定显示: 添加 ...
- 我是如何在SQLServer中处理每天四亿三千万记录的
首先声明,我只是个程序员,不是专业的DBA,以下这篇文章是从一个问题的解决过程去写的,而不是一开始就给大家一个正确的结果,如果文中有不对的地方,请各位数据库大牛给予指正,以便我能够更好的处理此次业务. ...
- Java 8五大主要功能为开发者提供了哪些便利?
两年前当Java 8发布后,立即受到了业界的欢迎,因为它大大提高了Java的性能.它独特的卖点是,顾及了编程语言的每一个方面,包括JVM(Java虚拟机)和编译器,并且改良了其它帮助系统. Java是 ...
- 【Web动画】SVG 线条动画入门
通常我们说的 Web 动画,包含了三大类. CSS3 动画 javascript 动画(canvas) html 动画(SVG) 个人认为 3 种动画各有优劣,实际应用中根据掌握情况作出取舍,本文讨论 ...
- iOS开发之ReactiveCocoa下的MVVM(干货分享)
最近工作比较忙,但还是出来更新博客了,今天给大家分享一些ReactiveCocoa以及MVVM的一些东西,干活还是比较足的.在之前发表过一篇博文,名字叫做<iOS开发之浅谈MVVM的架构设计与团 ...
- 搭建属于自己的VIP积分系统(1)
很久没写博客了,如果有写得不好的地方,还请多多见谅. 架构设计 需求分析 这篇文章主要是介绍此VIP系统的基础架构.说实在的,我其实对 架构方面也不是很懂,我这套框架 还是拿别人的东西改过来的,并不是 ...
- js从数组中随机取出不同的元素
前言 上午处理个需求需要从一个总数组中随机取出不同的元素.共使用两个方法.第一种方法较常规,经测试有bug,数据量大以后随机几次返回的对象直接是function而不是object. 当然简单数据类型应 ...
- angluarjs2项目生成内容合并到asp.net mvc4项目中一起发布
应用场景 angular2(下文中标注位NG2)项目和.net mvc项目分别开发,前期采用跨域访问进行并行开发,后期只需要将NG2项目的生产版本合并到.net项目. NG2项目概述 ng2项目采用的 ...