• 分支

其实在项目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使用详细教程(二)的更多相关文章

  1. Git使用详细教程(一)

    很久不发博客,最近有兴趣想写点东西,但 Live Writer 不支持从Word复制图片,疯狂吐槽下 Git使用详细教程(一) Git使用详细教程(二) 该教程主要是Git与IntelliJ IDEA ...

  2. 项目版本管理Git使用详细教程

    前言 记得刚开始做项目开发的时候都是一个人完成一个项目,单打独斗的开发,也不知道什么是团队开发,没有这个概念,随着工作后来知道公司里项目都是团队开发,这个时候这么多人怎么开发一个项目呢,难道用u盘拷贝 ...

  3. git超详细教程

    GitHub操作总结 : 总结看不明白就看下面的详细讲解. GitHub操作流程 : 第一次提交 : 方案一 : 本地创建项目根目录, 然后与远程GitHub关联, 之后的操作一样; -- 初始化Gi ...

  4. git超详细教程【转】

    转自:http://blog.csdn.net/liuwengai/article/details/52072344 GitHub操作总结 : 总结看不明白就看下面的详细讲解.   GitHub操作流 ...

  5. [置顶] Git学习总结(1)——Git使用详细教程

    一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以 ...

  6. 5.Git使用详细教程

    转自:https://www.cnblogs.com/seven-ahz/p/7712125.html 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的 ...

  7. git全套详细教程

    git安装 首先,我们要去git的官网下载一个git安装包,双击到无关紧要的步骤我就不详细描述了,直接介绍我们关键的步骤. 选择git包含的内容和打开方式 选择都很清晰,具体情况我不是很清楚,不过选择 ...

  8. Git使用详细教程(9):git log

    目录 格式化 检索 显示最近提交 Git中使用git log查看提交日志 如果日志很多的话,默认会以分页方式展示 空格可以翻下一页,ctrl+b翻上一页,q退出 格式化 如果想获取每条日志的简要信息, ...

  9. Git使用详细教程(1):工作区、暂存区、本地仓库、远程仓库

    之前的写过一篇如何在服务器上搭建Git服务Git服务器搭建,接下来的一段时间,我将详细的讲解Git的使用.看如下一张图片,本篇主要理解一些基本概念. 图中几个名词的意思如下: workspace: 工 ...

随机推荐

  1. Hello Web API系列教程——Web API与国际化

    软件国际化是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,在创建不同语言版本时,不需要重新设计源程序代码的软件工程方法.这在很多成熟的软件开发平台中非常常见.对于.net开发 ...

  2. 轻量级“集合”迭代器-Generator

    Generator是PHP 5.5加入的新语言特性.但是,它似乎并没有被很多PHP开发者广泛采用.因此,在我们了解PHP 7对Generator的改进之前,我们先通过一个简单却显而易见的例子来了解下G ...

  3. 10个最好用的HTML/CSS 工具、插件和资料库

    大家在使用HTML/CSS开发项目的过程中,有使用过哪些工具,插件和库?下面介绍的10种HTML/CSS工具,插件和资料库,是国外程序员经常用到的. Firebug Lite FirebugLite ...

  4. 前端学HTTP之web攻击技术

    前面的话 简单的HTTP协议本身并不存在安全性问题,因此协议本身几乎不会成为攻击的对象.应用HTTP协议的服务器和客户端,以及运行在服务器上的Web应用等资源才是攻击目标.本文将详细介绍攻击web站点 ...

  5. ASP.NET MVC5+EF6+EasyUI 后台管理系统(71)-微信公众平台开发-公众号管理

    系列目录 思维导图 下面我们来看一个思维导图,这样就可以更快了解所需要的功能: 上一节我们利用了一个简单的代码例子,完成了与微信公众号的对话(给公众号发一条信息,并得到回复) 这一节将讲解公众号如何设 ...

  6. C#异步编程(二)

    async和await结构 序 前篇博客异步编程系列(一) 已经介绍了何谓异步编程,这篇主要介绍怎么实现异步编程,主要通过C#5.0引入的async/await来实现. BeginInvoke和End ...

  7. UE4新手引导入门教程

    请大家去这个地址下载:file:///D:/UE4%20Doc/虚幻4新手引导入门教程.pdf

  8. node中的Stream-Readable和Writeable解读

    在node中,只要涉及到文件IO的场景一般都会涉及到一个类-Stream.Stream是对IO设备的抽象表示,其在JAVA中也有涉及,主要体现在四个类-InputStream.Reader.Outpu ...

  9. 玩转spring boot——MVC应用

    如何快速搭建一个MCV程序? 参照spring官方例子:https://spring.io/guides/gs/serving-web-content/ 一.spring mvc结合thymeleaf ...

  10. java web学习总结(五) -------------------servlet开发(一)

    一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...