• 分支

其实在项目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. NoSql数据库使用半年后在设计上面的一些心得

    NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 这个疑惑非常大,为此我看了很多分析文章, ...

  2. Content Security Policy 入门教程

    阮一峰文章:Content Security Policy 入门教程

  3. Matlab slice方法和包络法绘制三维立体图

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

  4. MySQL 系列(四)主从复制、备份恢复方案生产环境实战

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 第三篇:MySQL 系列(三)你不知道的 视图.触发器.存储过程.函数 ...

  5. Java多态性——分派

    一.基本概念 Java是一门面向对象的程序设计语言,因为Java具备面向对象的三个基本特征:封装.继承和多态.这三个特征并不是各自独立的,从一定角度上看,封装和继承几乎都是为多态而准备的.多态性主要体 ...

  6. C# 序列化与反序列化几种格式的转换

    这里介绍了几种方式之间的序列化与反序列化之间的转换 首先介绍的如何序列化,将object对象序列化常见的两种方式即string和xml对象; 第一种将object转换为string对象,这种比较简单没 ...

  7. github中的watch、star、fork的作用

    [转自:http://www.jianshu.com/p/6c366b53ea41] 在每个 github 项目的右上角,都有三个按钮,分别是 watch.star.fork,但是有些刚开始使用 gi ...

  8. AutoIt实现Webdriver自动化测试文件上传

    在运用WebDriver进行自动化测试时,由于WebDriver自身的限制,对于上传文件时Windows弹出的文件选择窗口无法控制,通过在网上查找资料锁定使用AutoIt来控制文件上传窗口. Auto ...

  9. Openstack Periodic Task

    Openstack Periodic Task 周期性任务在各个模块的manager.py(computer,scheduler,cell,network)中添加. 添加方法:在模块manager类实 ...

  10. Linux.NET学习手记(6)

    各位读者大家好,好长一段时间没有更新文章了,自从参加工作之后,每天等待去做的工作没完没了,个人的时间也变得奢侈起来,今后要尽量从中脱身,抽更多的时间来完成自己想做的事情(希望如此). 言归正传,上一回 ...