Git 之 问题集锦
准备:远程仓库名:origin 远程分支:master、tt 本地分支:master、test
1. error: src refspec *** does not match any

原因:$ git push origin tt
将本地的tt分支推送到远程仓库origin的tt分支,如果远程tt分支不存在则会创建
而本地没有tt分支,故报错。
解决方法:$ git push origin test ----> 保证本地分支和要推送的分支名一样,远程分支为test
或 $ git push origin test:tt ----> 将本地的test分支推送到远程tt分支
下面使用第二种方法:

【push用法】$ git push <远程主机名> <本地分支名>:<远程分支名>
当要推送的分支名和远程分支名一致时,可缩写为: $ git push <远程主机名> <分支名>
当要推送的当前分支名与远程分支名一致时,可缩写为: $ git push <远程主机名>
例:$ git push origin test:master
将本地分支test推送到远程仓库origin的master分支上
$ git push origin test
将本地分支test推送到远程仓库origin的test分支上
$ git push origin
推送本地分支到相应的远程仓库origin的分支上,即本地tt分支对应远程tt分支
2. ![rejected] **** -> master (fetch first) 更新拒绝

原因:远程仓库origin的master内容与本地test分支的内容不一样,而本地test分支在开发前没有更新代码,故提交时会出现更新拒绝。
解决方法:$ git pull origin master ----> 需要拉下来远程仓库的哪个分支,就将master替换成那个分支名,因为上面是要将本地test分支提交到远程master分支,所以这里写的是master。(本地所在分支为tt分支)
3. 自动合并失败,合并冲突
在解决问题2的时候,可能会遇到合并冲突的问题:

原因:远程仓库master分支中有文件的内容有改动(例子中为bbb.txt文件)与本地test分支的内容不一样。
而 $ git pull origin master 相当于先 $ git fetch master 后再 $ git merge origin/master,
所以在merge时,发生了冲突事件。
解决方法:修改有冲突的文件后,重新git add 或 git commit -a,然后再git push

【pull用法】$ git pull <远程主机名> <远程分支名>:<本地分支名>
当要更新合并到本地当前分支时,可缩写为: $ git pull <远程主机名> <远程分支名>
若当前分支与远程分支存在追踪关系,可缩写为:$ git pull <远程主机名>
设置追踪关系:$ git branch --set-upstream <本地分支名> <远程主机名>/<远程分支名>
默认本地master分支自动”追踪”远程origin的master分支。
例:$ git pull origin master:test
取回远程origin的master分支,并与本地test分支合并
$ git pull origin master
取回远程origin的master分支,并与本地当前分支合并
$ git branch --set-upstream test origin/tt
指定本地test分支追踪远程origin的tt分支
$ git pull origin
本地的当前分支自动与对应的origin主机”追踪分支”(remote-tracking branch)进行合并
【merge用法】将远程仓库分支与本地当前分支合并:$ git merge <远程主机名>/<远程分支名>
将本地其他分支与本地当前分支合并:$ git merge <本地分支名>
例:$ git merge origin/tt
将远程origin的tt分支合并到当前分支
$ git merge test
将本地test分支合并到当前分支
4. Already up-to-date 和 Everything up-to-date

原因:Already up-to-date发生在merge时,Everything up-to-date发生在push时。
主要是因为merge/push的本地分支与远程分支一致,并无改变。
解决方法:正常开发即可。
Git 之 问题集锦的更多相关文章
- Git常用命令集锦
本篇Git命令博客主要是一些Git常用命令,适合于有一定Git或linux基础的小伙伴进行参考 1.新建文件夹 mkdir 文件夹名 2.查看目录机构: pwd 3.将文件添加至Git管理范围:git ...
- git 命令使用集锦
使用git mv重命名文件,而不是delete然后再add文件. git format常用命令: git format-patch -4 //从当前分支最新提交点往下共生成4个补丁 git forma ...
- 【Java】反射调用与面向对象结合使用产生的惊艳
缘起 我在看Spring的源码时,发现了一个隐藏的问题,就是父类方法(Method)在子类实例上的反射(Reflect)调用. 初次看到,感觉有些奇特,因为父类方法可能是抽象的或私有的,但我没有去怀疑 ...
- Git问题集锦
1.初始新建git,出现No refs in common and none specified; doing nothing 解决方案:Perhaps you should specify a br ...
- 手把手 git建立仓库,远程推拉及常用git命令和部分Linux命令集锦
方法一:直接在GitHub上建立一个项目,然后git clone (git address name): 此时已经建立好了一个git仓库: cd 文件夹 > 添加文件进去 >git add ...
- git集锦
git branch -v 查看本地分支 git branch xxx 创建本地xxx分支 git checkout xxx 切换到本地xxx分支 git branch -d xxx 删除本地分支 g ...
- Git 错误集锦
执行git push提示Everything up-to-date 原因: ). 你想提交到分支, 却提交到主分支, 而主分支已经为最新, 查看当前分支是什么, git branch git push ...
- git 经常使用操作集锦
创建仓库 新建普通仓库: jxdong@ubuntu-server:~/workspace/git$ git init Reinitialized existing Git repository in ...
- Git报错问题集锦
git merge合并时遇上refusing to merge unrelated histories的解决方案 如果git merge合并的时候出现refusing to merge unrelat ...
随机推荐
- zookeeper可视化管理工具node-zk-browser安装
一.安装nodejs 1. 下载 wget https://github.com/joyent/node/archive/v0.10.35.tar.gz 2. 解压 3. 安装依赖 yum -y in ...
- 20145307第一周JAVA实验报告
20145307 <Java程序设计>第一次实验实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1453 指导教师:娄嘉鹏 实验日期:2016.04.08 ...
- 关于JavaScript对象,你所不知道的事(一)- 先谈对象
这篇博文的主要目的是为了填坑,很久之前我发表了一篇名为关于JavaScript对象中的一切(一) - 对象属性的文章,想要谈一谈JavaScript对象,可那时只是贴了一张关于这个主题的思维导图,今天 ...
- [转]3个著名加密算法(MD5、RSA、DES)的解析
MD5的全称是Message-Digest Algorithm 5,在90年代初由MIT的计算机科学实验室和RSA Data Security Inc发明,经MD2.MD3和MD4发展而来. ...
- spring boot 使用拦截器,注解 实现 权限过滤
http://www.cnblogs.com/zhangXingSheng/p/7744997.html spring boot 使用拦截器 实现 用户登录拦截 http://www.cnblogs. ...
- jquery tmpl模板
之前用模板渲染都是用angular,无意间发现了jquery tmpl这种轻量级,其文档在这里 官方解释对该插件的说明:将匹配的第一个元素作为模板,render指定的数据,签名如下: .tmpl([d ...
- Web应用体系结构
容器 Servlet没有main()方法,它们受控于另一个Java应用,这个Java应用称为容器(Container).我们最常见的tomcat就是这样一个容器. Web服务器应用(如Apache)得 ...
- 使用ASP.NET 的缓存机制的示例
if (HttpContext.Current.Cache["code_" + CodeType] == null) { SysCodeService codeService = ...
- puma(5300✨) Rails的一个多线程,高并发处理的web server
https://github.com/puma/puma 在开发和产品环境下,Puma是一个简单,快速,多线程,并高并发highly concurrent HTTP1.1server for Ruby ...
- [转]通过rsync+inotify-tools+ssh实现触发式远程实时同步
文件的同步镜像在很多地方都需要用到,因此rsync这款免费软件得到了广泛的应用,包括在Windows平台上,都已经有了支持rsync的“cwRsyncServer”. 但是,我们一般都是通过结合cro ...