git学习笔记5-撤销操作】的更多相关文章

工作区下的.git文件夹其实是Git的版本库,Git的版本库里存了很多东西,其中最重要的就是称为 stage 的暂存区,还有Git为我们自动创建的第一个分支 master ,以及指向master的一个指针叫 HEAD . 把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用 git add 把文件添加进去,实际上就是把文件修改添加到暂存区: 第二步是用 git commit 提交更改,实际上就是把暂存区的所有内容提交到当前分支. 场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区…
git撤销有四种情况,一是没有commit,想恢复所有文件:二是没有commit,想恢复全部文件:三是已经commit了,想恢复某个版本:四是本地已经提交了,想从远程库恢复. 1. 没有commit,在工作区,恢复所有文件 如果有多个文件被修改了,还没有commit,想恢复.在svn里面用revert就好了. 在git下面,可以用 git reset --hard HEAD 所有文件都恢复到原来的状态了. 2. 没有commit,在工作区,恢复一个文件 可以如果只是想恢复某一个文件怎么办呢?可以…
本文内容参考了廖雪峰老师的博文,并做了适当整理,方便大家查阅. 原帖地址 https://wangfanggang.com/Git/git/ 常用命令 仓库初始化 - git init 1 git init 我们新建一个文本文件readme.txt 12 Git is a distributed version control system.Git is free software. 将文件添加到仓库中 - git add 1 git add . 将文件提交到仓库 - git commit 1…
GIT学习笔记(2):时光机穿梭与远程仓库 撤销操作 1.GIT如何跟踪修改 在我们修改了代码内容后,执行了git add和git commit命令来将其交由Git进行版本控制.我们前面举的例子是这样的,git add将文件加入暂存区(菜篮子),git commit一并提交到版本库(柜台结账).如果我们想拿其他的菜,但是不加入篮子,Git是无法对其进行跟踪的. 比如我们队Test.java第一次修改后,执行git add命令将第一次修改版本加入了暂存区,然后又修改了Test.java,但是com…
本文主要记录了Git服务器的搭建,以及一些其他的配置,和最后的小总结. Git远程仓库服务器 其实远程仓库和本地仓库没啥不同,远程仓库只是每天24小时开机为大家服务,所以叫做服务器.我们完全可以把自己的某台多余的机器设置成不关机状态. 但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用. 搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就…
一.忽略特殊文件 在Git工作区的根目录下创建一个特殊的.gitignore文件,然后把要忽略的文件名填进去,Git就会自动忽略这些文件. 不需要从头写.gitignore文件,GitHub已经为我们准备了各种配置文件,只需要组合一下就可以使用了.所有配置文件可以直接在线浏览:https://github.com/github/gitignore .gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理! 二.配置别名 $ git config --global al…
Git 学习(四)操作修改和版本穿梭 之前的章节,已介绍了本地Git库创建.暂存区增.删.改,以及提交版本库:可回顾下命令操作: git add 和 git commit. 光有之前章节的操作,Git 显然不能满足版本控制的需求.所谓的版本控制,可理解为文件夹的时间机,即从创建该文件夹伊始,所有文件提交操作都将被记录版本库,且可以随意穿梭版本(回退至昨日的版本,或甚至N年前). 本文就此具体说明Git是如何管理修改.撤销修改以及在各个版本间穿梭的. 管理修改 为什么Git比其他版本控制系统设计得…
GIT学习笔记(1):创建版本库 创建版本库 1.创建合适目录并初始化为仓库 版本库即需要交由Git进行版本控制的目录,其下所有文件的修改.删除,Git都能跟踪还原. 说明:初始化后,当前目录下会多出来一个名为.git的隐藏目录,这个目录是Git用来跟踪管理版本库的,我们切勿修改. 关于GIT版本库 前面说了,GIT会在初始化为仓库的目录下创建一个.git的隐藏目录,它是GIT的版本库.GIT的版本库里存放了很多东西,其中最重要的就是称之为stage或index的暂存区,另一个是GIT为我们创建…
GIT学习笔记(5):变基rebase 变基 引入变基 在Git中整合来自不同分支的修改主要有两种方法:merge以及rebase. 整合分支最容易的方法是merge,他会把两个分支的最新快照以及两者最近的共同祖先进行三分合并,合并的结果是生成一个新的快照(并提交). 其实,还有一种方法,我们可以提取在TESTING在COMMIT:vg65w上所做的修改,然后根据它在MASTER所在的COMMIT:gta24上重新做一遍,就像重新播放一样,这样提交到某一分支上的所有修改都已到了另一分支上,我们称…
GIT学习笔记(4):远程分支 远程分支 远程分支是什么 远程分支是对远程仓库中的分支的索引.它们是一些无法移动的本地分支:只有在GIT进行网络交互时才会更新.远程分支就是书签,提醒着你上次连接远程仓库是上面各分支的位置. 我们用 (远程仓库名)/(分支名) 这样的形式表示远程分支.我们来举一个例子,假如你从GITHUB上克隆了一个项目到本地,GIT会自动为你将次远程仓库命名为origin,并且下载其中的所有数据,建立一个指向它的master分支的指针,在本地命名为origin/master,但…