报错

情况一:git pull报错

There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull() for details. git pull <remote> <branch> If you wish to set tracking information for this branch you can do so with: git branch --set-upstream-to=origin/<branch> release

其实,输出的提示信息说的还是比较明白的。

使用git在本地新建一个分支后,需要做远程分支关联。如果没有关联,git会在下面的操作中提示你显示的添加关联。

关联目的是在执行git pull, git push操作时就不需要指定对应的远程分支,你只要没有显示指定,git pull的时候,就会提示你。

解决方法:

就是按照提示添加一下呗:

git branch --set-upstream-to=origin/remote_branch  your_branch

其中,origin/remote_branch是你本地分支对应的远程分支;your_branch是你当前的本地分支。

或者使用

git push origin xxx

情况二:git push报错

To github.com:michaelliao/learngit.git
! [rejected] dev -> dev (non-fast-forward)
error: failed to push some refs to 'git@github.com:michaelliao/learngit.git'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

这是因为远程分支比你的本地更新,有人先于我们提交代码到远程

解决方法:

拉取最新代码,然后在push

git pull

情况三:git add报错

案例一:

Changes not staged for commit

可是我们明明有修改啊!

解决方法:

目录层级不对,找到正确的再次执行命令

案例二:

The following paths are ignored by one of your .gitignore files:
App.class
Use -f if you really want to add them.

因为这个文件被我们忽略了

解决方法:

强制提交

git add -f xxx 

疑问

情况一:别人在远程库中已经新建好了一个分支,我们想要在本地创建该分支

git checkout dev/master

git pull

git branch -r

git checkout origin/xxx -b xxx

git push origin xxx

情况二:开发新的项目时,我们肯定要新建分支,如果我们/别人已经在远程库中新建了一个分支,如果我们也要在该分支上开发,那么可以在本地直接从该远程库中创建分

支(实际上同上)

git checkout origin/item-1.9-1125(远程分支名) -b item-1.9-1125(本地分支名,无所谓叫什么) : 切远程分支到本地,这样远程分支和本地分支就关联起来了,push的话只会push到该远程分支

情况三:当我们改完代码,而且是第一次push,发现push不上去时

git push origin 分支名 -> push到远程

情况四:如果我们两个人同时完成一个项目,并且在各自的分支开发,上预发环境或者上线的时候我们需要将两人的代码merge到一个分支,此时我们需要新建一个分支,

将两人的代码merge到该分支,用这个分支上预发和上线

假定现在两人都开发完,准备合代码的分支叫item-merge

a: 从当前的分支新建分支item-merge

git checkout -b item-merge (已经新建了item-merge分支,该分支包含a的代码)

b: 已经将自己的代码push到item-merge

a: git fetch (拉下新分支)

git pull origin item-merge (该分支为想要拉取代码的分支,这样我们就将别人的代码拉到了我们的这个分支)

⚠️在情况四的基础上,如果第一个人先push到后端并部署了,第二个人在push时会提醒先pull,pull之后发现会有冲突,那么我们在后端库中找到对应的文件解决冲突

“Accept CurrentChange”接受当前更改,之后在push

情况六:如果我们在本地修改了两个文件a、b,没有add也没有commit,此时我们想要丢弃对a文件的修改,但保留对b文件的修改

git checkout a(想要丢弃的文件名)

情况七:现有a、b两个文件,且内容相同,我们修改了a文件,如果想要b文件中也有a文件中的修改

git checkout b

git merge a

这样我们就将a文件的内容合并到了b文件

情况八:发现pull不下来

可能不是在当前分支修改的,要checkout到修改的分支,然后pull,然后checkout回自己的分支,merge一下,之后add、commit、push

情况九:错误merge怎么办

Git错误merge怎么办?

Git怎样撤销一次分支的合并Merge

git merge了错误分支,如何优雅的回退到merge前的状态?

版本回退

情况九:我只想让一个文件回退到之前的版本

git checkout commitid xxx(文件名)

Git复习(十)之常见报错和疑问的更多相关文章

  1. Git常用命令及常见报错:You have not concluded your merge (MERGE_HEAD exists)、清理无效的远程追踪分支

    一.常用命令 切换到master分支:git checkout master 查看已有本地及远程分支:git branch -a(先git pull拉下全部数据) 查看远程分支:git branch ...

  2. Veritas NetBackup™ 状态码"十大"常见报错状态码

    我在刚开始学习Netbackup的时候,没少走弯路.经常会遇到各种稀奇古怪的 error 信息,遇到报错会很慌张,急需一个解决问题的办法.跟无头苍蝇一样,会不加思索地把错误粘到百度上,希望赶紧查找一下 ...

  3. Mysql 常见报错和疑问汇总

    1.初始化数据库的时候报错 error while loading shared libraries: libstdc++.so.5: cannot open shared object file:  ...

  4. 03:git常见报错解决方法

    1.1 git常见报错解决方法 1.warning: LF will be replaced by CRLF in .idea/workspace.xml. 参考博客:https://www.cnbl ...

  5. web报表工具FineReport使用中遇到的常见报错及解决办法(二)

    web报表工具FineReport使用中遇到的常见报错及解决办法(二) 这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己. 出现问题先搜一下文档上有没有,再看看度娘 ...

  6. java常见报错及解决

    Java常见报错信息: Java 常见异常种类 Java Exception: 1.Error  2.Runtime Exception 运行时异常 3.Exception  4.throw 用户自定 ...

  7. HDFS集群常见报错汇总

    HDFS集群常见报错汇总 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.DataXceiver error processing WRITE_BLOCK operation 报 ...

  8. JavaScript 调试常见报错以及原因

    JavaScript 调试常见报错以及原因 测试环境 chrome 版本 66.0.3359.170(正式版本) (64 位) TypeError 类型错误 不是操作符所接受的数据类型. //---- ...

  9. Nginx 常见报错

    Nginx 常见报错 启动报错:[emerg]: bind() to 0.0.0.0:80 failed (98: Address already in use) 原因:这个是nginx重启时经常遇到 ...

随机推荐

  1. Java工程师成神之路(2018年最新版)

    一.基础篇 JVM JVM内存结构 堆.栈.方法区.直接内存.堆和栈区别 Java内存模型 内存可见性.重排序.顺序一致性.volatile.锁.final 垃圾回收 内存分配策略.垃圾收集器(G1) ...

  2. uni-app 尺寸单位

    uni-app 支持的通用 css 单位包括 px.rpx px 即屏幕像素 rpx 即响应式px,一种根据屏幕宽度自适应的动态单位.以750宽的屏幕为基准,750rpx恰好为屏幕宽度.屏幕变宽,rp ...

  3. 纹身女孩 Tattooed girl 可爱动人 出水芙蓉 窈窕多姿

    目录 开宗明义

  4. linux目录简介说明

  5. Java实现批量下载选中文件功能

    1.在action中定义变量 ? 1 2 3 4 5 6 private List<String> downLoadPaths = new ArrayList<String>( ...

  6. js Date格式转化

    Date格式转化为日期  年-月-日(格式随意修改) GetDateStr(dd, AddDayCount) { dd.setDate(dd.getDate() + AddDayCount)// 获取 ...

  7. SqlServer数据库查看被锁表以及解锁Kill杀死进程

    步骤1.查看锁表进程        2.杀死进程 --1.查询锁表进程 spid.和被锁表名称 tableName select request_session_id spid,OBJECT_NAME ...

  8. Python爬虫学习==>第七章:urllib库的基本使用方法

    学习目的: urllib提供了url解析函数,所以需要学习正式步骤 Step1:什么是urllib urllib库是Python自带模块,是Python内置的HTTP请求库 包含4个模块: >& ...

  9. php composer 开发自己的包

    以往都是在项目直接写自己的包文件,并没有把他放在packagist上面,以composer来管理使用. 今天没事来整一下,供大家一起学习 一,在github和packagist分别注册自己的账号,这里 ...

  10. mobile/immobile species的区别

    在地下水反应运移模型中: “mobile species” 涉及运移和反应过程(transport+reaction) “immobile” species 只涉及反应过程 (reaction)