git gui 还原部分提交文件

  有时候用git提交文件的时候会一起提交了多个文件,但是突然后悔了,想把其中一个文件撤销提交,其他文件不做修改。这个时候该怎么办呢?

  我觉得有很多办法,比如可以先checkout到上次的提交,然后复制要撤销修改的文件,然后再checkout到最新的版本,再手动复制粘贴。。这样相当于手动去旧版本copy了一个文件覆盖新版本。这样做其实也不难,但是比较烦。。。目录多的时候找文件比较麻烦,另外要撤销的文件多的时候也比较坑爹。。。这个时候其实可以利用git自带的功能来完成任务的。

Cherry -pick

  cherry-pick用于把另一个本地分支的commit修改应用到当前分支。

  基本百度这个命令都能得到这个答案。。。。。

  但是经过我实验发现这个命令其实并不止局限于2个不同的分支,即使是同一个分支也是能做到的。

  所以说我们的目的怎么达到呢?在最新的版本上利用cherry -pick 命令去把上次提交的合并到当前版本就OK了。

举栗子~

  现在在版本1提交了2个txt文件,1.txt和2.txt

修改2个文件以后再提交

现在我想把1.txt恢复到上次提交,2.txt不变怎么办呢?

查看master分支历史以后,在上个版本上(init)上右键选择cherry -pick this commit

然后gui会询问你,这个commit已经在分支上了,是否要继续。。。

选择是以后,会提示你有冲突,这和我们想的一样,因为上个版本的txt和最新版本的txt肯定不一样嘛。。。

 

然后就到了解决冲突的界面。。。

当前local版本是最新的版本,remote的版本是cherry -pick过来的commit版本,所以我们要还原1.txt的话就在1.txt的正文里选择remote的版本,在2.txt里选择local的版本

然后再提交这次commit就OK了。。。这次commit相当于是做了一个merge。。。

时间: 2024-08-10 00:05:49

git gui 还原部分提交文件的相关文章

git pull/push 因提交文件内容过大而失败的解决方案

不知是 GitHub 在国内又被封了还是因为本文的原因,我个人是在执行了下述操作后成功提交了. 以作记录,内容如下: Compressing objects: 100% (163/163), done. error: RPC failed; result=52, HTTP code = 0 fatal: The remote end hung up unexpectedly Writing objects: 100% (365/365), 3.39 MiB | 0 bytes/s, done.

手把手教你提交文件到git

手把手教你使用git提交到github 作者 数据分析与优化 关注 2016.07.17 10:25 字数 7342 阅读 399评论 1喜欢 6 摘要Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上.既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了. 一:Git

Eclipse中Git插件还原文件

如果修改了某个文件并未提交至本地库(add index),那么怎么还原呢?Git插件中并不像Svn插件直接提供有还原方式.其实无论是否提交至本地库或者远程库,还原操作的本质都是将文件的当前 版本还原至之前的某个版本,因为Git会把每次修改记录作为一个新的版本.具体操作步骤如下: 1. 以还原index2.html文件为例,打开index2.html文件,如图: 2. 右键点击文件,选择team菜单,然后选择Show Local History菜单,如图 3. 在右侧文件修改历史列表中,选择要查看

从 Git Gui 管理的Repository(库) 提交更改到 Bonobo服务器管理的Repository(库)

要提交更改到Bonobo服务器管理的某个Repository(库),必须先得在Bonobo服务器上有此Repository(库)——简直就是废话.那么怎么才能这个Repository(库)变出来呢?其实很简单,在Bonobo网站里新建一个就可以了,具体步骤看看这篇随笔.这里介绍如何在Git Gui上新建本地Repository(库),并在本地新建文件.修改文件,然后将更改commit(提交)到本地库,最后push(推)到远程的Bonobo服务器.操作步骤和注意事项如下: 打开Git Gui,如图

git提交文件到github命令

1.安装git软件 git下载地址:链接:http://pan.baidu.com/s/1o8AKGyQ 密码:r7rk 安装着三个.exe文件,安装成功后在桌面鼠标右键会看到:git clone,TortoiseGit,然后选择TortoiseGit中->setting->选择语言——>简体中文,然后确定,git就这么简单安装成功啦! 2.windows(开始)->git->gitBash3.mkdir iGit//在c:\Users\Administrator盘创建iGi

git还原本地提交的某个历史记录

转载地址:http://jingyan.baidu.com/article/e4511cf33479812b855eaf67.html 1.以还原index2.html文件为例,打开index2.html文件,如图: 2 右键点击文件,选择team菜单,然后选择Show Local History菜单,如图 3 在右侧文件修改历史列表中,选择要查看的历史版本,点击右键,如图: 4 点击右键菜单中的Compare current with local,可以比对所选择的版本和本地当前版本文件的不同:

Android开发Git版本号控制,究竟哪些文件不要提交

安卓开发的小伙伴们.想必大家在创建项目的时候,都有为project的哪些文件须要提交的git的版本号控制而犯愁过吧.深怕有些文件提交了影响团队其它成员的更新使用.尤其是把一些暂时的编译构建文件给提交了,被Team Leader骂的不要不要的. 下面就是不须要经过git版本号控制来提交的文件和文件夹,详细代码能够查看project的.gitignore文件: IntelliJ IDEA(IDE相关的设置) .idea *.iml *.ipr *.iws Gradle(gradle相关的) .gra

Git 怎么创建本地库,向本地库提交文件

创建版本库是非常简单的,首先选择一个自己想放的位置,创建一个空目录: (用windows的git bash,这个工具的操作命令和linux下类似) $ mkdir gitRespository      //创建目录 $cd gitRespository $git init  //将这个目录初始化成一个空的本地仓库 然后我们在gitRespository 这个目录下创建一个txt文件.readme.txt,内容如下: Git is a version control system. Git is

Git提交文件步骤

现阶段主要根据倪总给的要求,对页面做些感动,比如一些表格的删除,以及格式的排列.但由于用到的是angular框架,文件的格式以及目录会比较复杂,再加上代码量比较大,所以还是有些难度的,这也算是对前几个星期学习的一个总结吧. 1.将页面中表格多余的列删除. 1) 打开相应的页面,查看其IP地址,地址对后的那一项即为该页面的文件名. 2)打开webstorm,双击shift,查找config.router.js文件,然后在该js文件中shift ,查找1中的文件名 3)查找到该state以后, .s