用了两天时间看完廖雪峰老师的git教程(http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000),摘要如下(介绍/安装等等均不提,直接上命令 ):
1.首先,选择一个合适的地方,创建一个空目录:
mkdir learngit //创建目录learngit cd learngit //打开learngit目录 pwd //查看当前路径
2.初始化一个Git仓库,使用命令。
3.添加文件到Git仓库,分两步:
  • 第一步,使用命令,注意,可反复多次使用,添加多个文件;
  • 第二步,使用命令,完成。
4.要随时掌握工作区的状态,使用命令。
  • 如果告诉你有文件被修改过,用可以查看修改内容。
指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令。
  • 穿梭前,用可以查看提交历史,以便确定要回退到哪个版本。
  • 要重返未来,用查看命令历史,以便确定要回到未来的哪个版本。
6.场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令。
场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令,就回到了场景1,第二步按场景1操作。
场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考版本回退,不过前提是没有推送到远程库。
7.命令用于删除一个文件。如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
8.要关联一个远程库,使用命令;
关联后,使用命令第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令推送最新修改;
9.要克隆一个仓库,首先必须知道仓库的地址,然后使用命令克隆。Git支持多种协议,包括,但通过支持的原生协议速度最快
10.Git鼓励大量使用分支:
  • 查看分支:创建分支:切换分支:创建+切换分支:合并某分支到当前分支:删除分支:11.当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。用命令可以看到分支合并图。

    合并分支时,加上参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而合并就看不出来曾经做过合并。
    12.修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
    13.当手头工作没有完成时,先把工作现场一下,然后去修复bug,修复后,再,回到工作现场。
    14.开发一个新feature,最好新建一个分支;
    15.如果要丢弃一个没有被合并过的分支,可以通过强行删除。
    16.远程管理
    • 查看远程库信息,使用;
    • 本地新建的分支如果不推送到远程,对其他人就是不可见的;
    • 从本地推送分支,使用,如果推送失败,先用抓取远程的新提交;
    • 在本地创建和远程分支对应的分支,使用,本地和远程分支的名称最好一致;
    • 建立本地分支和远程分支的关联,使用;
    • 从远程抓取分支,使用,如果有冲突,要先处理冲突。
    17.标签管理
    • 命令用于新建一个标签,默认为,也可以指定一个commit id;
    • 可以指定标签信息;
    • 可以用PGP签名标签;
    • 命令可以查看所有标签。
    • 命令可以推送一个本地标签;
    • 命令可以推送全部未推送过的本地标签;
    • 命令可以删除一个本地标签;
    • 命令可以删除一个远程标签。
    18.使用github
    • 在GitHub上,可以任意Fork开源仓库;
    • 自己拥有Fork后的仓库的读写权限;
    • 可以推送pull request给官方仓库来贡献代码。
    最后,可以登陆如下网址深入学习git-- https://git-scm.com/book/en/v2

Git入门学习总结的更多相关文章

  1. git入门学习(二):新建分支/上传代码/删除分支

    一.git新建分支,上传代码到新的不同分支  我要实现的效果,即是多个内容的平行分支:这样做的主要目的是方便统一管理属于同一个内容的不同的项目,互不干扰.如图所示: 前提是我的github上已经有we ...

  2. git入门学习(一):github for windows上传本地项目到github

    Git是目前最先进的分布式版本控制系统,作为一个程序员,我们需要掌握其用法.Github发布了Github for Windows 则大大降低了学习成本和使用难度,他甚至比SVN都简单. 一.首先在g ...

  3. Git入门学习和使用

    #开篇废话 开篇废话又回来了,离开博客算是有一年了,之间曾经痛下很多次决心,继续写博客,后来都失败了,前年为了申请个CSDN专家,每天发博客,那个高产的状态,现在已然不行了,时过境迁,当时为了吃口饱饭 ...

  4. git入门学习

    初步学习笔记. 1.创建仓库:git init 仓库:个人理解为文件存放及版本追踪的容器,对应着一个目录,目录中包含用户的文件及git用来追踪文件版本的一系列文件. 新建并进入HelloWorld目录 ...

  5. git 入门学习

    1. 分享一个我自己的百度网盘地址 链接:https://pan.baidu.com/s/17W7gpJNbqgBFy7VOl6-dvw 提取码:2a7t 2.安装就不说了,基本全默认就OK.安装完城 ...

  6. Git入门学习和应用笔记

    >>关于Git 1.BitMover公司收回Linux社区的BitKeeper免费使用权,Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git.2.什么是集中式版本控制系 ...

  7. git 入门学习笔记

    安装msysgit (模拟环境Git)安装后绑定邮箱和名字$ git config --global user.name "Your Name"$ git config --glo ...

  8. 1.Linux下Git入门学习

    1.在Linux下安装git软件,使用以下命令: yum install git 2.设置用户名和邮箱(必须): git config --global user.name "Your Na ...

  9. 码云配合git入门命令总结学习

    目录 码云配合git入门命令总结学习 基本设置 基本命令总结学习 准备工作以及基本思路 基本命令 码云搭建仓库步骤 准备前工作 具体操作方法 远程仓库基本命令 标签相关命令 所有命令总结 基本命令总结 ...

随机推荐

  1. MySQL安装过程中对The error code is 2203的解决方案

    MySQL安装过程中对The error code is 2203的解决方案 1.问题描述 Windows系统安装MySQL遇到The error code is 2203.,具体描述如下 The i ...

  2. ubuntu_deb安装命令

    dpkg命令常用格式如下: sudo dpkg -I iptux.deb#查看iptux.deb软件包的详细信息,包括软件名称.版本以及大小等(其中-I等价于--info) sudo dpkg -c ...

  3. POCO库中文编程参考指南(11)如何使用Reactor框架?

    1 Reactor 框架概述 POCO 中的 Reactor 框架是基于 Reactor 设计模式进行设计的.其中由 Handler 将某 Socket 产生的事件,发送到指定的对象的方法上,作为回调 ...

  4. 【opencv学习笔记七】访问图像中的像素与图像亮度对比度调整

    今天我们来看一下如何访问图像的像素,以及如何改变图像的亮度与对比度. 在之前我们先来看一下图像矩阵数据的排列方式.我们以一个简单的矩阵来说明: 对单通道图像排列如下: 对于双通道图像排列如下: 那么对 ...

  5. F - 棋盘问题

    F - 棋盘问题 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit Sta ...

  6. Programming With Objective-C---- Introduction ---- Objective-C 学习(一)

    About Objective-C Objective-C is the primary programming language you use when writing software for ...

  7. vc++图像显示

    显示资源中的图片 (1)从资源中装入位图 ● 定义位图对象数据成员CBitmap m_Bitmap; ● 调用CBitmap成员函数LoadBitmap(),如m_Bitmap.LoadBitmap( ...

  8. 在Sql2005中,向表中插入数据时遇到uniqueidentifier列,如何插入数据?

    Sql2005中,提供了uniqueidentifier 数据类型.说白了,就是个GUID,这种类型开发时倒是很有必要的. 今天程序中遇到了这个问题:表里定义了一个uniqueidentifier 列 ...

  9. Vue拖拽组件列表实现动态页面配置

    需求描述 最近在做一个后台系统,有一个功能产品需求是页面分为左右两部分,通过右边的组件列表来动态配置左边的页面视图,并且左边由组件拼装起来的视图,可以实现上下拖拽改变顺序,也可以删除. 根据这个需求我 ...

  10. OVS数据库操作

    说明 [Record]就是行对应的_uuid [if-exists]当值不存在的是否会报错而不是返回False 基本信息查询 列举数据库 # ovsdb-client list-dbs Open_vS ...