1.初始化一个Git仓库,使用git init命令。

2.添加文件到Git仓库,分两步:

• 第一步,使用命令git add 文件名,注意,可反复多次使用,添加多个文件;

• 第二步,使用命令git commit -m "一些提交的说明",即可完成。

3.查看状态

• 要随时掌握工作区的状态,使用git status命令。

• 如果git status告诉你有文件被修改过,用git diff可以查看修改内容。

4.版本回退

• 查看提交日志git log,git log命令显示从近到远的提交日志。

如果嫌输出信息太多,看得眼花缭乱的,可以试试加上 --pretty=oneline参数:git log --pretty=oneline 

•首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是新的 提交“ 3628164...882e1e0”(注意我的提交ID和你的肯定不一样),上一个版本就是 HEAD^,上上一个版本就是HEAD^^,当然往上100 个版本写100个^比较容易数不过来, 所以写成HEAD~100。

•使用 git reset --hard HEAD^ 把版本回退到上一个版本。

不过回退后 git log 再查看提交时,回退前的那个版本消失了。此时如果想恢复到该版本,需要执行 git reset --hard 3628164 既需要知道该版本的commit id前6位或7位。如果你忘记了该版本的commit id,使用git reflog来查看每次提交的commit id。

tips: cat 文件名 查看文件。

其它说明:

前面讲了我们把文件往Git版本库里添加的时候,是分两步执行的:

第一步是用“git add”把文件添加进去,实际上就是把工作区文件修改添加到暂存区;每次修改,如果不add到暂存区,那就不会加 到commit中。

第二步是用“git commit”提交更改,实际上就是把暂存区的所有内容提交到当前分支。

git diff HEAD -- 文件名 命令可以查看工作区和版本库里面新版本的区别。

撤销修改

还没有把修改后的文件提交到暂存区时

       git checkout -- 文件名(git checkout -- file命令中的“--”很重要,没有“--”,就变成了“创建一个新分支”的命令)

命令git checkout -- 文件名 意思就是,把readme.txt文件在工作区的修改全部撤销。

这里有两种情况:一种是文件自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一 样的状态; 一种是文件已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂 区后的状态。 总之,就是让这个文件回到最近一次git commit或git add时的状态。

已经把修改后的文件提交到暂存区时

    git reset HEAD 文件名

git reset 命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时, 表示最新的版本。再用git status查看一下,现在暂存区是干净的,工作区有修改:再用 git checkout -- 文件名 丢弃工作区的修改。

删除文件

在删除某个文件后,工作区和版本库就不一致了,git status命令会立刻告诉你哪些文件被删除了:

现在你有两个选择,一是确实要从版本库中删除该文件,那就用命令git rm 删掉,并且 commit:git rm 文件名  ,再git commit -m "删除了XX文件"。

另一种情况是删错了,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到新版本: $ git checkout -- 文件名。

git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。

【版本管理】git本地操作的更多相关文章

  1. git的学习笔记(一):git本地操作

    1.Git介绍 Git是一个开源的分布式版本控制软件,用以有效.高速的处理从很小到非常大的项目版本管理. Git 最初是由Linus Torvalds设计开发的,用于管理Linux内核开发. Git ...

  2. Git 本地操作

    版权声明:数学是研究世界的本质,自然科学是研究上帝的意志,而计算机则是揣摩屌丝人类的意志   目录(?)[-] 命令 git config 增删改查 init clone add commit sta ...

  3. IDEA工具java开发之 常用插件 git插件 追加提交 Code Review==代码评审插件 撤销提交 撤销提交 关联远程仓库 设置git 本地操作

    ◆git 插件 请先安装git for windows ,git客户端工具 平时开发中,git的使用都是用可视化界面,git命令需要不时复习,以备不时之需 1.环境准备 (1)设置git (2)本地操 ...

  4. Git本地操作2

    code[class*="language-"], pre[class*="language-"] { color: rgba(51, 51, 51, 1); ...

  5. GIT本地操作

    01. GIT简介(PPT) ================================================================================ 02. ...

  6. Git本地操作相关介绍

    本地使用git时遇到问题及解决方案总结: 1.git push origin master 后,终端上出现错误信息: push失败,原因多半是因为github上远程仓库中有Reademe.md文件 解 ...

  7. git的学习笔记(二):git远程操作

    1.创建ssh key ssh-keygen -t rsa -C "your_email@example.com" 执行命令后会在用户的家目录生成.ssh的隐藏文件夹,文件夹里有公 ...

  8. 本地创建的项目使用版本管理(git)推送至远端。

    1.创建项目 mkdir nidexiangmu cd nidexiangmu touch README.md 2.使用 git 命令管理 git init // 建立本地仓库 git add . / ...

  9. Git本地服务器搭建及使用详解

    Git本地服务器搭建及使用 Git是一款免费.开源的分布式版本控制系统.众所周知的Github便是基于Git的开源代码库以及版本控制系统,由于其远程托管服务仅对开源免费,所以搭建本地Git服务器也是个 ...

随机推荐

  1. JAVAWEB和数据库 Mysql连接不上的原因及解决方案

    有可能是安装了phpstudy或者wampserver这类自带mysql的web集成环境, 在关闭集成环境时误关了相对应的mysql服务,所以我们需要手动启动服务. 启动mysql的命令: net s ...

  2. h5小球走迷宫小游戏源码

    无意中找到的一个挺有意思的小游戏,关键是用h5写的,下面就分享给大家源码 还是先来看小游戏的截图 可以用键盘的三个键去控制它,然后通关 下面是源代码 <!doctype html> < ...

  3. js简单时间比较的方法(转)

    //时间比较(yyyy-MM-dd) function compareDate(startDate, endDate) {   var arrStart = startDate.split(" ...

  4. java查询几个菜单下的所有下级菜单

    需求: 假如有几个一级菜单,一级菜单下面有几个二级菜单,二级菜单下又还有三级菜单.现在要求一级菜单里面的几个设置为无效,将不显示在前端.现在需要的是查询出一级菜单下面所有的菜单,包括二级,三级菜单 原 ...

  5. NO--14 微信小程序,左右联动二

    上一篇讲解了左=>右联动,那个还比较简单,本篇写剩下比较核心的部分,也是本次开发过程中遇到最难的部分,右=>左联动,先简单看一下演示   右左联动.gif 一.关键技术: (1) 小程序 ...

  6. 求二维数组最大子数组的和。郭林林&胡潇丹

    求二维数组子数组的最大值,开始思路不太清晰.先从最简单的开始. 以2*2的简单数组为例找规律, 假设最大数为a[0][0],则summax=a[0][0],比较a[0][0]+a[0][1].a[0] ...

  7. [工具]chrome添加crx扩展程序(附禁止复制破解扩展)

    Hello亲爱的观众朋友们大家好,我是09. 今天带来墙内用户安装chrome插件的方法. 1.打开扩展程序 2.把crx往里拖,欧了. ps.顺带安利chrome禁止复制破解扩展Enable Cop ...

  8. GlusterFS分布式存储集群-2. 使用

    参考文档: Quick Start Guide:http://gluster.readthedocs.io/en/latest/Quick-Start-Guide/Quickstart/ Instal ...

  9. [持久更新] 剑指offer题目Python做题记录

    第一题 题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 思路:先快速定位到 ...

  10. Apache 性能配置优化

    前言 最近在进行apache性能优化设置.在修改apache配置)文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. htt ...