git恢复已删的分支】的更多相关文章

git恢复已经删除的分支 执行git命令, 找回之前提交的commit git log -g 执行效果 commit 80fd3a3e1abeab52030ee9f6ec32b5c815de20a9 (HEAD -> dev-201806-patch, origin/dev-201806-patch) Reflog: HEAD@{0} (chengluchao <chengluchao@baiwang.com>) Reflog message: commit: ************…
在Git中一切的操作都是可以恢复的,包括已经删除的提交,今天在做一个项目时就遇到了这种问题,也不知道是怎么回事不小心就把上午提交的所有代码都删除了,于是赶紧通过git log来查看日志,但奇怪的是当时不知是怎么操作的通过log并没有找到当时提交的任何记录 在网上有人说reflog可以找到所有的操作记录,然后按照操作通过reflog成功恢复被删除的提交 参考:Git reflog 机制 Git挽救丢失的代码 从Git仓库中恢复已删除的分支.文件或丢失的commit 3.2 Git 分支 - 分支的…
亲测可用 因为自己 commit 并且 push 后 因为冲突 提交不了,不小心做了 rebase 代码被 覆盖 用以下命令 还原: 查看所有日志 并记下 hash 值 git reflog 然后用: git reset --hard 记下的hash值 然后打开 eclipse 刷新一下代码就回来了. 在使用Git的过程中,有时可能会有一些误操作 比如:执行checkout -f 或 reset -hard 或 branch -d删除一个分支 结果造成本地(远程)的分支或某些commit丢失 可…
由于一时疏忽,错误的删除了未发布正式的开发分支,经查资料已恢复分支,特此记录 查看Git日志 git reflog |grep 'filter_or_gwf' 以下日志为已删除分支 filter_or_gwf 相关的操作日志: ① 在HEAD@{60}从master 创建了新的分支 filter_or_gwf ② 在HEAD@{6} 时错误的删除了分支 filter_or_gwf ③ 6 和 60之间来回切换.合并.提交了一些修改 可以看到 在HEAD@{14} 处最后切换到了该分支 filte…
在使用git的过程中,因为人为因素造成分支(commit)被删除,可以使用以下步骤进行恢复. 首先用以下步骤创建一个新分支,修改一些文件后删除,以便进行恢复. 1.创建分支 abc git branch abc 2.查看分支列表 git branch -a abc * develop remotes/origin-dev/develop 3.切换到abc分支,随便修改一下东西后 commit 切换分支 git checkout abc Switched to branch 'abc' 创建一个文…
如果我们需要在现有的分支代码基础上,复制代码到新分支进行开发,并推送至远程仓库,可以进行如下操作: 注:被复制的分支代码(ibis35),创建新的分支(ibis35-dev) 1. 切换到被copy的分支(ibis35),并且从远端拉取最新版本 $ git checkout ibis35$ git pull 2. 从当前分支拉copy开发分支$ git checkout -b ibis35-dev 3. 把新建的分支push到远端$git push origin ibis35-dev 4. 拉取…
开发过程中经常用到从master分支copy一个开发分支,下面我们就用命令行完成这个操作: 1. 切换到被copy的分支(master),并且从远端拉取最新版本 $git checkout master $git pull 2. 从当前分支拉copy开发分支 $git checkout -b dev Switched to a new branch 'dev' 3. 把新建的分支push到远端$git push origin dev 4. 拉取远端分支$git pull There is no…
git支持很多种工作流程,我们采用的一般是这样,远程创建一个主分支,本地每人创建功能分支,日常工作流程如下: 去自己的工作分支$ git checkout workbranch 工作.... 提交工作分支的修改$ git commit -a 回到主分支$ git checkout master 获取远程最新的修改,此时不会产生冲突$ git pull 回到工作分支$ git checkout workbranch 用rebase合并主干的修改,如果有冲突在此时解决$ git rebase mas…
<Pro Git>笔记3:Git分支基本操作 分支使多线开发和合并非常容易.Git的分支就是一个指向提交对象的可变指针,极其轻量.Git的默认分支为master. 1.Git数据存储结构和分支 git提交时会将暂存文件的内容,暂存的目录结构,提交对象,含附注标签对象都以包含信息头的二进制文件形式存储到版本库中(.git/objects目录),存储的对象以其自身SHA1值作为唯一标识,SHA1前两位为存储对象所在目录名,SHA1后38位为存储对象的文件名.存储的数据对象类型有: blob(文件内…
当我们初始化Git仓库的时候,Git会默认创建一个名为master的主分支.在实际工作中,主分支要求是一个稳定.健壮.安全的主线,一般不允许在主分支上直接进行开发,而是拉取一个新的分支,开发.测试完成后,再将分支合并到主分支上. 使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间. Git 的分支模型可称为"必杀技特性",而正是因为该特性将 Git 从版本控…
一.创建与合并分支 1.创建分支 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点.每次提交 ,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长. 当我们创建的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上: Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD指向,工作区…
4个区 5种状态 未修改(Origin) 已修改(Modified) 已暂存(Staged) 已提交(Committed) 已推送(Pushed) 检查修改 已修改,未暂存(检查工作区与暂存区间的差异) git diff 已暂存,未提交(检查暂存区与本地仓库间的差异) git diff --cached 已提交,未推送(检查本地仓库与远程仓库间的修改) git diff master origin/master ## origin/master 为远程仓库 撤销修改 已修改,未暂存(撤销工作区的…
1.bug分支 在开发中,会经常碰到bug问题,那么有了bug就需要修复,在Git中,分支是很强大的,每个bug都可以通过一个临时分支来修复,修复完成后,合并分支,然后将临时的分支删除掉. 比如我在开发中接到一个404 bug时候,我们可以创建一个404分支来修复它,但是,当前的dev分支上的工作还没有提交.比如如下: 并不是我不想提交,而是工作进行到一半时候,我们还无法提交,比如我这个分支bug要2天完成,但是我issue-404 bug需要5个小时内完成.怎么办呢?还好,Git还提供了一个s…
git本地创建多个分支,互不干扰. 情景:在做某个需求a时,先需要修改紧急bug b:发版时发的是远程dev的代码.   方式一(推荐): (1)本地已有分支dev,写了需求a,先commit,即将工作区的内容提交到版本库中,否则切换到其他分支时,就会覆盖当前工作区的代码.(这步很重要) (2)在本地创建dev_bug分支,从远程dev分支中check(git checkout -b dev_bug origin/dev) (3)在本地dev_bug上修改bug,并commit.push到远程d…
git git 是一个版本管理系统(VCS),可以在任何时间点,将文档的状态作为一份更新记录保存起来,并且在任意的时间点,恢复更新记录 版本管理 版本管理是一种记录文件变化的方式,方便查阅特定版本号的文件内容 人为维护文档版本问题 1.文档数量紊多,命名不清晰,导致文档版本混乱2.每次编译文档需要赋值,不方便3.多人同时编辑一个文档,容易产生覆盖 git使用 在使用git前,需要全局配置git 提交用户名 - git config --global user.name “用户名” 提交邮箱 -…
git本地创建多个分支互不干扰 在项目开发过程中,经常会遇到下面这种情况: 业务情景:在做某个需求a时,先需要修改紧急bug b:发版时发的是远程dev的代码 方式一(推荐): (1)本地已有分支dev,写了需求a,先commit,即将工作区的内容提交到版本库中,否则切换到其他分支时,就会覆盖当前工作区的代码.(这步很重要) (2)在本地创建dev_bug分支,从远程dev分支中check(git checkout -b dev_bug origin/dev) (3)在本地dev_bug上修改b…
实战 回退 1.删除之前的提交 git reset --hard id 推送到远程 git push -f [git log中确实删除了,但是拿到可以恢复] 2.不删除之前的提交 git revert id Git恢复之前版本的两种方法reset.revert(图文详解) 一.问题描述 在利用github实现多人合作程序开发的过程中,我们有时会出现错误提交的情况,此时我们希望能撤销提交操作,让程序回到提交前的样子,本文总结了两种解决方法:回退(reset).反做(revert). 二.背景知识…
一开始git只有一条时间线,这个分支叫主分支,即master分支. HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支. 每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长: 当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上: Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD的指向,…
/********************************************************************* * git 恢复工作区删除的所有文件 * 说明: * 今天一个不小心将git工作区的内容给删除了,仓库还在,记录一下怎么 * 恢复的方法. * * 2016-10-26 深圳 南山平山村 曾剑锋 ********************************************************************/ 一.参考文档: . g…
 eclipse与myeclipse恢复已删除的文件和代码 今天写了1300多行代码,被不小心删除了顿时感觉手足无措,后来用myeclipse的历史文件恢复功能,找回来了,虚惊一场!!!MyEclipse真的很强悍啊:必须将这个功能写写,要不感觉就对不起Myeclipse的作者 1.类文件的恢复 前些天在开发中,不小心将一个写着有数1000行代码的类删除了,本能下去按了ctrl+z进行恢复,但没有一点用,但还是搜索下有没有解决的方法,要重新写一遍真有点 心不甘啊,哈哈 终于还是找到了一个好方法:…
git config -global user.name "Your name" git config -global user.email "you@example.com" 建立一个存放工程的文件夹 git init命令用于初始化当前所在目录的这个项目 会创建一个隐藏文件  .git 创建 main.c 文件 创建  .gitignore文件,忽略该文件里面有的项目文件 git status 查看项目状态 git add .. 给我目前的这个项目制作一个快照sn…
匿名分支 新建个仓库,并且初始化,创建3个文件,并提交 此时在没有创建新分支的情况下,checkout一下,比如上一个快照 这一段话的意思是,使用了checkout命令,但是没有指定分支名,所以git会创建一个叫做匿名分支(没有名字的分支)的东西,当你切换到别的分支的时候,在这个匿名分支中,所做的所有操作.提交都会被丢弃掉,所以可以使用匿名分支来做一些实验 创建并提交4.txt 切回master分支 说有一个没有连接到任何分支的提交(1920177 4.txt),如果要保留为一个新的分支,那么现…
默认,git项目只有一个分支,就是master,我们当然可以在本地创建多个分支,并推送到远程git管理平台上,或者将远程git管理平台上的其他分支拉取到自己电脑上. 一.查看本地已有的分支 进入到项目根目录,打开命令行/终端,输入指令,将会显示该项目的本地的全部分支,其中.当前分支的前面有*号. git branch 二.本地检出一个新的分支并推送到远程仓库 (一).创建本地分支 git checkout -b 新分支名 执行该指令后,会在本地创建一个新分支,该分支是从当前分支上检出的,所以所有…
是否遇到过这种情景: 您在一个分支上工作,发现该分支上的某些文件实现的功能已经在其他分支上实现了 但因为这两个分支实现不同的功能,因此不能进行简单的合并工作,但您又不想重复其他已经完成的工作 以下操作可以解决该问题:   处理流程这样的: 先检验当前分支与要合并分支通用文件的差异(要合并的分支必须要全部commit) 拉出要“合并某分支文件有差异”的所有文件(会覆盖当前分支的文件,在提交前请手动合并差异文件) git checkout 分支名称 多个指定的文件名 添加并commit到当前分支 g…
Git 学习(六)分支管理 几乎每一种版本控制系统都支持分支.使用分支意味着你可以从开发主线上分离开来,然后不影响主线的同时继续工作.在很多版本控制系统中,这是个昂贵的过程,常常需要创建一个源代码目录的完整副本,对大型项目来说会花费很长时间. 作为优越的版本控制系统,Git 对分支的管理是极其轻便易用的.本文具体说明Git是如何进行分支管理的,如分支的创建.查看.切换.删除等,以及分支的合并及冲突解决.分支对于多人协作是及其重要,内容较多,慢慢来~ 有人把 Git 的分支模型称为“必杀技特性”,…
预备知识: SSH协议参考资料:http://blog.csdn.net/vevenlcf/article/details/43273405 图解公钥和私钥:http://blog.csdn.net/linuxnews/article/details/51119862 百度百科:https://baike.baidu.com/item/ssh/10407?fr=aladdin 基于密钥的安全验证,就是提供一对密钥,把公钥放在需要访问的服务器上,如果连接到SSH服务器上,客户端就会向服务器发出请求…
本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也尊重你的智商: 本站部分原创和翻译文章提供markdown格式源码,欢迎使用文章源码进行转载: 本文标题:Git查看.删除远程分支和tag 本文链接:http://zengrong.net/post/1746.htm 2013-01-09:加入删除远程tag的内容 查看远程分支 加上-a参数可以查看远程分支,远程分支会用红色表示出来(如果你开了颜色支持的话): ? BAS…
随着工作量的增多,接触的新项目,新同事越来越多,发现自己不会的东西好多.有这么一句话:“你所知道的知识就像是一个圆,你会的越多,圆越大,但你接触的未知世界也越大,也就越加觉得自己无知”.原话记不全了,大概意思是这样的,现在我就越来越觉得自己无知了... ==================================================== 消极的分界线 ===================================================== 最近做的一个项目,…
1.分支简介 git保存的不是文件的差异,而是不同时刻的文件快照 git仓库中的对象: commit对象:包含指向前一个commit的指针的所有提交信息 树对象:记录目录结构和blob对象索引 blob对象:保存着文件快照 HEAD指针:指向当前所在的本地分支,可认为是当前分支的别名 git log --oneline --decorate 使用--decorate查看各个分支当前所指的commit对象 git log --oneline --decorate --graph --all ,它会…
本文转载自:http://blog.chinaunix.net/uid-9398085-id-3164754.html git创建与管理远程分支 1.远程分支就是本地分支push到服务器上的时候产生的.比如master就是一个最典型的远程分支(默认). $: git push origin master 除了master之外,我们还可以随便创建分支,然后push到服务器上去.例如: 1 $: git push origin develop 2 Counting objects: 27, done…