Git简单操作及原理
设置签名:
用户名:tom
Email地址:goodMorning@atguigu.com
git config user.name tom_pro
git config user.email goodMorning@atguigu
作用:区分不同开发人员的身份,无其他作用
辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系
命令:(就近原则:二者都没有不允许)
项目级别/仓库级别:仅在当前本地库范围内有效
系统级别:登录当前操作系统的用户范围有效
--local / --global /
查看项目配置保存的位置:cat .git/config
显示日志:
git log
git log --pretty=oneline
git log --oneling 备注:只显示当前版本之前的版本,不显示之后的版本
git reflog 备注:HEAD@{移动到当前版本需要的步数}
多屏显示方式:空格向下翻页、b向上翻页、q退出
版本前进后退:
本质:HEAD
基于索引值操作(最好用)
git reset --hard 局部索引值
使用^符号(只能后退)
git reset --hard HEAD^ 向后退一个版本
git reset --hard HEAD^^^ 向后退三个版本
使用~符号
git reset --hard HEAD~3
reset的三个参数对比:
--soft:
仅仅在本地库移动HEAD指针
--mixed:
在本地库移动HEAD指针
重置暂存区
--hard:
在本地库移动HEAD指针
重置暂存区
重置工作区
比较文件差异:
git diff 文件名
将工作区中的文件和暂存区进行比较
git diff 本地库中历史版本 文件名
将工作区中的文件和本地库历史记录比较
分支管理:
分支的好处:
分支操作:
查看分支:git branche -v
创建分支:git branch 分支名称
切换分支:git checkout 分支名称
合并分支:1)切换到主分支上 git checkout 被合并分支名,增加新内容
2)执行merge命令 git merge 有新内容分支名
解决冲突:
Git基本原理
快照:
每一个文件节点都有一个hash值
对各个版本存储的信息
创建分支等于创建一个指针
分支的切换:HEAD指向的分支名称切换了
master分支变化了
Git简单操作及原理的更多相关文章
- git学习笔记03-本地git常用操作及原理-文件增删改
1.查看git状态 git status 这个可以告诉我们对git做了哪些操,比如增删改 2.既然我们修改了东西,有的时候想看看修改了什么,毕竟我们的记忆力并不如电脑 git diff 文件名 (默 ...
- 在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC
非常感谢OSC提供了这么好的一个国内的免费的git托管平台.这里简单说下TortoiseGit操作的流程.很傻瓜了 首先你要准备两个软件,分别是msysgit和tortoisegit,乌龟还可以在下载 ...
- GIT简单操作
以下只是简单的bash的操作命令,个人比较喜欢用gui 打开 git bash here git clone https://github.com/自己的名字/trunk git checkout + ...
- GitHub Git 简单操作
一.使用git更新GitHub 准备:本地已经安装好git 登录GitHub,选择好仓库,点击 Clone or download 拷贝地址 这里的地址为:https://github.com/edw ...
- Eclipse安装Git插件及简单操作
0. 前言 说一件事,说起来也是好笑,工作三年半了,还没接触到团队开发,都是一个人小打小闹.因此连Git都没有使用过.感觉好Low的,这一篇,简单讲一下,Eclipse配置Git插件,并提交代码到Gi ...
- 小丁带你走进git世界一-git简单配置
小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config –global user.name BattleHeaer ...
- GitHub学习心得之 简单操作
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本文对Github的基本操作进行了总结, 主要基于以下文章: http://gitre ...
- Git远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- [转]Git远程操作详解
原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...
随机推荐
- spring-ioc的注解 理解-1
简单对象注入的理解 用到了两个对象 Student .Wife ,一个xml配置(在idea编译器的resource文件下),主要是为让spring去扫描注解,一个测试类,一个pom.xml,导入需要 ...
- List转String数组 collection.toArray(new String[0])中new String[0]的语法解释
Collection的公有方法中,toArray()是比较重要的一个. 但是使用无参数的toArray()有一个缺点,就是转换后的数组类型是Object[]. 虽然Object数组也不是不能用,但当你 ...
- IO、NIO、BIO的区别
我们首先得明白什么是同步,异步,阻塞,非阻塞,只有这几个单个概念理解清楚了,然后在组合理解起来,就相对比较容易了. IO模型主要分类: 同步(synchronous) IO和异步(asynchrono ...
- 元类、orm
目录 一.内置函数exec 二.元类 1. 什么是元类 2. 元类的作用 3. 创建类的两种方法 4. 怎么自定义创建元类 三.ORM 1. ORM中可能会遇到的问题 2. ORM中元类需要解决的问题 ...
- JAVA学生宿舍管理系统
转: JAVA学生宿舍管理系统 需要的工具 1.SQL Server 2.Eclipse 3.JDBC连接数据库驱动 https://download.microsoft.com/download/A ...
- 解决.NET Core Ajax请求后台传送参数过大请求失败问题
解决.NET Core Ajax请求后台传送参数过大请求失败问题 今天在项目上遇到一个坑, 在.Net Core中通过ajax向mvc的controller传递对象时,控制器(controller)的 ...
- Python基础学习【day2】
运算符 运算符有哪些? 加 + 减 - 乘 * 除 / 幂 ** 取余 % ...
- (数据科学学习手札112)Python+Dash快速web应用开发——表单控件篇(上)
本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...
- 绿色物流-智慧仓储监控管理 3D 可视化系统
前言 随着电子商务产业的迅速发展,快递爆仓已成为了困扰仓储物流的一大难题.大量的碎片化订单,传统仓储管理和运作方式已无法满足,加速仓储物流管理的智能化.自动化升级创新,延伸而出的智慧物流概念成为物流行 ...
- mysql最权威的总结
1.数据库操作 create database person charset utf8; -- 创建数据库show DATABASES; -- 查看数据库drop database person; - ...