参考博客:廖雪峰的官方网站

一、window安装git

Git官网直接下载安装程序,默认选项安装即可。

1、设置自己的git(cmd命令或者git bash进入)

git config --global user.name "myname"
git config --global user.email "myname@example.com"

二、创建版本库

第一步:选择一个合适的存储位置,创建一个空目录(请确保目录不含中文)

mkdir learngit
cd learngit

第二步:git init 命令将这个目录变成Git管理的仓库

git init

三、文件管理

1、添加文件到版本库

注意:版本控制系统只能跟踪文本文件的改动,无法记录图片、视频、Word文档等二进制格式文件。

并且文本文件编辑最好统一编码,如utf-8(不要用window自带的记事本编辑文本)。

添加文件分两步:

  1、git add file,将文件放入暂存区stage

  2、git commit -m message,将文件放入分支master

2、git status 查看版本库状态,git diff file 查看本地和仓库的不同【只能查看未add的文件的改动】

  文件修改未add --》Changes not staged for commit

  文件add后 --》Changes to be committed

  文件commit后 --》On branch master nothing to commit,working tree clean

3、回退版本或丢弃更改

  git log 从近到远显示commit提交日志。参数 --pretty=oneline 将提交日志单行显示

  git reflog 从近到远显示命令历史,包含命令id,供回退。

  git reset --hard HEAD^ 回退到上一个版本【^符号在window下需要加双引号】

    HEAD^^ 上上个版本,往上第100个版本:HEAD~100

  参数:hard 回退时,版本文件覆盖本地文件,未add、已经add、已经commit都会清空。再次回到回退前的版本,也是版本库文件,git diff 显示为空,git status 显示工作区干净,没有提交。

     soft 回退时,之前commit的、已经add的将会放入暂存区stage,之前未add的,还在工作区等待add。再次回到回退前的版本,恢复到之前的状态。

     mixed 回退时,回退版本上已经commit、未add的、已经add的都放在工作区,还没add。

  git checkout -- file 撤销工作区的修改,回到commit或add时的状态。【SVN中checkout,是检出某个版本,因为SVN里没有暂存区的概念,检出即意味着版本覆盖】

    回到commit:即本地与版本库一致;回到add:即原先add后,checkout依然在add状态。

  git reset HEAD file 将暂存区文件放到工作区

4、删除文件

  git rm file 删除文件,放入暂存区,等待提交

  

git--分布式版本管理系统的更多相关文章

  1. git分布式版本管理系统

    Git是分布式版本管理系统Svn是集中式版本管理系统 git速度快,适合大规模协同开发 什么是分布式版本管理系统 假如有10个人,每个人的代码库都是独立的,自己想进行代码提交回滚都可以,无需链接中央服 ...

  2. Git ——分布式版本控制系统

    Git ——分布式版本控制系统 本人git主页地址:https://github.com/lendoon/test.git git使用心得:初次接触git在课堂上,老师给我们提供了一个代码托管的场所, ...

  3. g4e基础篇#2 Git分布式版本控制系统的优势

    g4e 是 Git for Enterprise Developer的简写,这个系列文章会统一使用g4e作为标识,便于大家查看和搜索. 章节目录 前言 1. 基础篇: 为什么要使用版本控制系统 Git ...

  4. GIT 分布式版本控制系统的简单使用介绍

    GIT 分布式版本控制系统的简单使用介绍 1.GIT的概念Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 与 SVN 区别:1. GIT不仅仅是个版本控制系统,它 ...

  5. Git分布式版本控制系统(下)

    Git分布式版本控制系统(下) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...

  6. GIT分布式版本控制系统

    Git诞生历史 我想大家还记得Linus torvalds在1991年时发布了Linux操作系统吧,从那以后Linux系统变不断发展壮大,因为Linux系统开源的特性,所以一直接受着来自全球Linux ...

  7. 手把手教你玩转Git分布式版本控制系统! (转载)

    目录 Git诞生历史 Git环境准备 Git安装部署 Git常用命令 Git基本操作 Git管理分支结构 Git管理标签 GitLab安装部署 GitHub托管服务 Git客户端工具 Git诞生历史 ...

  8. 手把手教你玩转Git分布式版本控制系统!

    目录 Git诞生历史 Git环境准备 Git安装部署 Git常用命令 Git基本操作 Git管理分支结构 Git管理标签 GitLab安装部署 GitHub托管服务 Git客户端工具 1 Git诞生历 ...

  9. 《Linux就该这么学》自学笔记_ch21_使用Git分布式版本控制系统

    <Linux就该这么学>自学笔记_ch21_使用Git分布式版本控制系统 文章主要内容: 分布式版本控制系统 使用Git服务程序 提交数据 移除数据 移动数据 历史记录 还原数据 管理标签 ...

  10. 开发效率优化之Git分布式版本控制系统(一)

    阿里P7移动互联网架构师进阶视频(每日更新中)免费学习请点击:https://space.bilibili.com/474380680本篇文章将先从Git分布式版本控制系统来阐述开发效率优化 一,企业 ...

随机推荐

  1. The function getUserId must be used with a prefix when a default namespace is not specified 解决办法

    The function getUserId must be used with a prefix when a default namespace is not specified 解决方法: 1. ...

  2. Tips In C

    C语言中的使用操作 宏定义时使用do while防止语句的分离, 但是不使用与需要有返回值的语句, 这个时候可以参考第二条 宏定义时使用({}), ()加上{}的方式, 在代码中填写逻辑算法, 最后的 ...

  3. AngularJS directive 动态 template

    app.directive('testwindow', function() { return { restrict : 'E', template: '<ng-include src=&quo ...

  4. 【杜鹃沙盒】Cuckoo SandBox学习笔记

    这是个github上开源前十的项目之一,笔者只完成学习了部分功能,前来分享点经验 整个工程 连接地址 :https://github.com/cuckoosandbox/cuckoo 0x01调试运行 ...

  5. HTTP的GET和POST格式解析

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/yc0188/archive/2009/10/29/4741871.aspx HTTP报文是面向文本的,报文中的每一个字 ...

  6. Swift UI开发初探 (转)

    原文地址:http://www.tairan.com/archives/6600 关于Swift语法,可以参考<Apple Swift编程语言入门教程> 效果如下: 开发环境 Xcode6 ...

  7. MySQL(三) 完整性约束

    一.介绍 约束条件与数据类型的宽度意义,都是可选参数. 作用:用于保证数据的完整性和一致性. 主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIGN ...

  8. 设置 text-align: center;line-height:height 居中无效

    1.设置文字水平居中 内联元素(行内元素)使用: text-align: center: 使用后文字仍然没有居中 解决方法:设置width:100%: 块元素使用: margin: 0 auto; 2 ...

  9. 爬虫技术框架——Heritrix

    Heritrix是一个由Java开发的开源Web爬虫系统,用来获取完整的.精确的站点内容的深度复制, 具有强大的可扩展性,运行开发者任意选择或扩展各个组件,实现特定的抓取逻辑. 一.Heritrix介 ...

  10. Spark python集成

    Spark python集成 1.介绍 Spark支持python语言,对于大量的SQL类型的操作,不需要编译,可以直接提交python文件给spark来运行,因此非常简单方便,但是性能要比scala ...