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

一、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. VS Code Plugins And Configuration

    VS Code插件 vscode-icons: 显示文件类型的图标 project manager: 管理项目, 项目的保存加载与切换 beautify: 控制缩进 code runner: 执行代码 ...

  2. HDU 5446——Unknown Treasure——————【CRT+lucas+exgcd+快速乘+递推求逆元】

    Each test case starts with three integers n,m,k(1≤m≤n≤1018,1≤k≤10) on a line where k is the number o ...

  3. Android下常见的内存泄露 经典

    转自:http://www.linuxidc.com/Linux/2011-10/44785.htm 因为Android使用Java作为开发语言,很多人在使用会不注意内存的问题. 于是有时遇到程序运行 ...

  4. Day7下

    T1 我直接就用的LCA ,可能慢点.反正数据试过了. T2 期望dp不会啊. T3 好麻烦.

  5. Windows Store 应用获得设备 ID 的几种方案

    本文为个人博客备份文章,原文地址: http://validvoid.net/solutions-get-device-id-for-uwp/ 通过生成唯一的设备 ID 进行数据统计是应用开发中一个非 ...

  6. centos系统安装mysql

    方式一. 通过yum install mysql-server安装mysql服务器.chkconfig mysqld on设置开机启动,并service mysqld start启动mysql服务,并 ...

  7. hibernate课程 初探一对多映射2-1 一对多映射简介

    1 在数据库中用主外键的形式实现一对多的映射关系 2 hibernate 在一方设置集合set,表示多方

  8. elasticsearch映射及分析-----3

    首先我们看下不同的索引方式相同的字段指定字段类型与不指定字段类型es会怎么处理 1.不指定类型,直接创建索引及类型文档 我们看下他默认的索引映射 2.创建索引和类型时指定字段类型 这里创建了一个索引为 ...

  9. ORACLE:毫秒与日期的相互转换,获取某天的信息

    毫秒转换为日期 SELECT TO_CHAR(1406538765000 / (1000 * 60 * 60 * 24) + TO_DATE('1970-01-01 08:00:00', 'YYYY- ...

  10. 从零开始的全栈工程师——js篇(正则表达式)

    正则 就是一条规则 用来检验字符串的格式 目标就是字符串 只要是通过表单提交的数据 都是字符串1.正则定义var reg = new RegExp( )var reg = /格式/ <--简写 ...