Git中撤销提交】的更多相关文章

Git的几种状态 未修改 原始内容 已修改 ↓ 工 作 区 已暂存 ↓ git add 暂 存 区 已提交 ↓ git commit 本地仓库 已推送 ↓ git push 远程仓库 注意:下面所有命令每一个代码段是相互独立的,为了解决一个问题,请不要使用多个代码段.所有命令均经过本人测试,由于测试环境是简单的Git仓库没有过多的数据,可能在复杂环境回出现错误.如发现问题请直接评论区指出.请仔细分析使用情况,丢失数据与本人无关. 已修改 未暂存 已经修改了文件,还未进行git add. 即工作区…
翻译:李伟 审校:张帆 译自:Github JF杰微刊:如何在Git中撤销一切 任何一个版本控制系统中,最有用的特性之一莫过于 "撤销(undo)"操作.在Git中,"撤销"有很多种含义. 当你完成了一次新的提交(commit),Git会及时存储当前时刻仓库(repository)的快照(snapshot):你能够使用Git将项目回退到任何之前的版本. 下文中,我将列举几个常见的.需要"撤销"的场景,并且展示如何使用Git来完成这些操作. 一.撤…
翻译:李伟 审校:张帆译自:Github 任何一个版本控制系统中,最有用的特性之一莫过于 “撤销(undo)”操作.在Git中,“撤销”有很多种含义. 当你完成了一次新的提交(commit),Git会及时存储当前时刻仓库(repository)的快照(snapshot):你能够使用Git将项目回退到任何之前的版本. 下文中,我将列举几个常见的.需要“撤销”的场景,并且展示如何使用Git来完成这些操作. 一.撤销一个公共修改 Undo a "public" change 场景:你刚刚用g…
在SVN中,提交记录是无法修改的.比如说,当我们提交了某次修改后,发现该次提交中有错误时,只能将将补丁再次提交一遍.这样,就存在两次提交记录,没有保证提交的原子性. 在GIT中,由于提交是在本地进行的,因此如果没有发布之前,是允许使用reset命令来撤销提交记录的,这个命令有如下三种使用方式: git reset -soft: 只撤销commit,保留working tree和index file. git reset -mixed: 撤销commit和index file,保留working…
“xml文件存储数据”提交被我误操作,即使用reset  --hard删除了,然后又进行了三次提交,发现删除的提交有用,需要找回来, 于是找了好久,找到好方法: 1.进入工程下的.git文件下,git reflog命令 2.使用命令git branch recover_branch 5b7cf2c(哈希码) 然后在新分支recover_branch中就有我删除的提交了,如下图 注意:reset hard还是谨慎操作…
1. 先删除原有的.DS_Store: find . -name .DS_Store -print0 | xargs -0 git rm -f --ignore-unmatch 命令解释:在当前文件夹以及当前文件夹的子文件夹中找到所有的.DS_Store文件,并将找到的文件通过管道传给xargs来处理.注意几个参数的理解: -print0:在find后不添加换行符(-print默认会添加换行符) -0:将管道送来的字符串当做普通的字符串,不做任何转义处理. 2. 建立.gitignore文件 v…
  Git的几种状态 未修改 工作区 已修改 ↓ 工作区 已暂存 ↓ 暂存区 已提交 ↓ 本地仓库 已推送 ↓ 远程仓库 已修改 未暂存 已经修改了文件,还未进行git add 恢复方法 使用一下任意命令 git checkout . git reset --hard 已暂存 未提交 已经进行了git add,还未进行git commit 恢复方法 使用一下任意命令 git reset git checkout . git reset --hard 已提交 未推送 已经进行了git ommit,…
问题描述       场景:当你提交的时候,发现跟要合并的流有冲突,你需要解决完冲突再次提交. 如果在SVN时代,你可以直接在本地解决完冲突再提交就可以了,因为SVN会把正确的代码先提交到服务器,至于有冲突的代码,你需要在本地解决完冲突再提交. 但在Git中这样做行不通,Git中每次提交都是完整的,也就是说,即使你这次提交有中冲突的代码,它也一并会推送到要合并的流,每次提交会有一个change_id,当你解决完冲突提交后,这个change_id又会发生变化.这样导致的直接后果是:由于Git是由提…
在git中我们提交项目的时候有很多东西是不需要进行版本管理的,因此我们需要忽略掉. 虽然在github2.0的windows客户端提供了工具,但是这个工具并不是想象中的那么好用. 在上面点右键出现的Discard changes只能忽略掉一个文件,如果想忽略掉一个文件夹里的所有文件,这样点下去还不累死? 为了解决这个问题,我们还是用命令行来做,其实很简单,就用到一个命令,git status.我们打开桌面上的Git shell图标 他的用法与windows的命令行基本是一样的.跳转到要忽略文件夹…
团队开发中经常遇到错误删除文件,错误提交等情况,那么使用Git该如何正确的进行撤销和恢复呢? 一.增补提交 git commit –C HEAD –a --amend -C表示复用指定提交的提交留言,这个例子中是HEAD,实际上可以指定其他有效的提交名称. 如果参数是小写的-c,就会打开预先设置好的编辑器,以便在已有的提交留言基础上编辑修改. 增补提交只能针对最后一个提交,如果想更正好几个提交之前的某个错误,则须使用git revert这个命令. 二.反转提交 反转已经提交的改动,使用git r…