git push 的解决方案

如果输入$ git push origin master

提示出错信息:

  

  或者

  

  失败的原因:不能 push 远端仓库

  原因分析:由于你当前分支落后与远程端对应分支,所以无法更新;

  解决方案:使用 git pull origin master (先把远程服务器github上面的文件拉下来),然后使用 git push origin master 将本地仓库中的所有文件都提交到远程仓库中



  若还不能解决问题,接着会出现如下报错信息:

  

  失败的原因:拒绝让我合并不相关的历史

  解决方案:git pull origin master --allow-unrelated-histories

  

  然后,就可以使用  git push origin master。



一般,git push origin master 出现问题的原因如下:

  1、是本地做了版本的回退,比如用了git reset,所以本地分支版本落后于远程端对应分支。
  2、在你push之前别人有push同一个分支的代码,导致远程比本地新。

对于1:
  这种情况如果确保本地强制回退是舍掉了一些没用的东西,则可以用   git push -f (危险、慎用)

  注:强制 push本地分支将会覆盖远程对应分支。这样操作一定要小心,因为 push -f 之后远程对应分支比之前本地多的一些提交将丢失。如果不确保本地回退对应部分可以舍弃,则要用情况2的方法解决

对于2:

  可以使用以下命令:

1 git fetch origin master  // 把远程最新的更新到本地 // 之后可以切换到远程分支(git checkout origin/master)查看/修改该分支的文件内容
2 git merge origin/master  // 把远程最新的合并到本地分支
3 // 或者
4 git pull origin master   // git pull = git fetch + git merge


冲突的解决方案:

  1、打开有冲突的文件,删除特殊符号,修改文件内容直到字节满意为止;

  2、git add [文件名]

  3、git commit -m "日志信息"

    注意:此时 commit 一定不能带具体文件名

原文地址:https://www.cnblogs.com/nbk-zyc/p/12328980.html

时间: 2024-10-11 05:29:08

git push 的解决方案的相关文章

<问题解决02>Linux虚拟机使用git push报错--解决方案如下:

问题描述: 使用git push 报错: error: The requested URL returned error: 403 Forbidden while accessing https://github.com/Newlyfly/Hello_World.git/info/refs fatal: HTTP request failed 解决方案: 解决方案来源博客地址:http://blog.csdn.net/happyteafriends/article/details/1155404

git版本管理工具push失败解决方案参考

git clone [email protected] 版本后,edit某文件,commit之后,点push,提示报错. 可能有以下原因: 1.权限不够,远程仓库的文件夹(比如/home/git)下面的文件所属用户非git用户,而默认的文件权限通常是644,那么当你用非git用户push的时候,肯定是权限不够的. 解决方法:进入远程仓库的上一级,查看git目录下所有文件的权限,比如: cd /home/git ls -al 更改git目下所有文件目录的文件主为git: chown -R git.

git push报错error: failed to push some refs to '[email protected]:

$ git push -u origin master To [email protected]:xxx/xxx.git ! [rejected] master -> master (fetch first) error: failed to push some refs to '[email protected]:xxx/xxx.git' hint: Updates were rejected because the remote contains work that you do hint:

Git push本地代码到新建远程仓库

   Git  push本地代码到新建远程仓库 来源 http://blog.csdn.net/u011043843/article/details/33336625 1.创建一个新的仓库: 自己传图累死了 借网上图一用 2.在Git bash下创建并初始化本地仓库 3.找到要上传到远程仓库的项目文件,放入到bless目录下面或其子目录下面 .git是git init命令后自动创建的,不用管 4.将远程仓库与本地仓库关联 dwqs/bless.git分别用你们注册的账户名和创建的远程仓库名代替,

关于Git-2.6.3-64-bit版本的git push

最近学习Git,学习到github时,有个命令git push用完之后总报如下问题: 经查阅获悉: Matching——“matching”参数是 Git 1.x 的默认行为,其意是如果你执行 git push 但没有指定分支,它将 push 所有你本地的分支到远程仓库中对应匹配的分支. Simple——而 Git 2.x 默认的是 simple,我的版本是2.x,意味着执行 git push 没有指定分支时,只有当前分支会被 push 到你使用 git pull 获取的代码. 解决方案: ma

解决GitHub使用双因子身份认证“Two-Factor Athentication”后无法git push 代码的“fatal: Authentication failed for ...”错误

在GitHub上采取双因子身份认证后,在git push 的时候将会要求填写用户的用户名和密码,用户名就是用户在GitHub上申请的用户名,但是密码不是普通登录GitHub的密码. 一旦采取双因子身份认证,登录GitHub的时候既需要输入用户名和密码,还需要输入一个即时的验证码,这样可以对Git账户提供双重的安全保障.但是git push 却怎么也没法推送到远端repo,总是提示身份认证错误:“fatal: Authentication failed for ...” 查了很多国内的解决方案,只

git push 每次都提示输入密码解决方法

我曾经切换过一次github账号, 似乎还更改过一次github账号的密码, 然后呢?然后就是每次向github提交代码时都要输入用户名密码(猜测是由于上述原因导致),每次都是啊, 这也忒麻烦了, 于是就想办法解决这个问题, 经过一番查找, 终于找到一个解决办法, 分享之, 与君共勉 !! ============== 解决方案: 在你的用户目录下新建一个文本文件, 名曰.git-credentials 用户目录: windows: C:/Users/username mac os x: /Us

git push的使用

在使用push时,我们要特别注意分支的名称和”关联分支"对于操作的影响: 1.git push 2.git push origin <remote_branch> 3.git push origin <local_branch>:<remote_branch> 测试起始环境: 远程仓库有两个分支:master和dev 本地仓库由一个分支:master 注:本次只使用dev分支进行演示 [email protected] MINGW64 /e/02.Worksp

git push错误failed to push some refs to的解决方法

! [rejected] master -> master (non-fast-forward) error: failed to push some refs to '[email protected]:yangchao0718/cocos2d.githint: Updates were rejected because the tip of your current branch is behinhint: its remote counterpart. Integrate the remo