未能将一些参考文献推送到git@heroku.com:myapp.git

时间:2012-03-22 21:52:44

标签: git heroku git-svn

当我尝试将文件推送到heroku rep时,我收到此错误。 我尝试过以下解决方案,但没有人帮忙:

  1. this
  2. 尝试git pull heroku master(结果如下)
  3. 尝试git push heroku -f(下面的结果)
  4. set autocrlf = false
  5. 请指导我完成这件事。

    谢谢

    C:\myapp>git init
    Reinitialized existing Git repository in C:/myapp/.git/
    C:\myapp>git add .
    C:\myapp>git add -u
    
    C:\myapp>git commit -m "ic"
    # On branch master
    nothing to commit (working directory clean)
    
    C:\ myapp>git push heroku
    To git@heroku.com:myapp.git
     ! [rejected]        master -> master (non-fast-forward)
    error: failed to push some refs to 'git@heroku.com:myapp.git'
    To prevent you from losing history, non-fast-forward updates were rejected
    Merge the remote changes (e.g. 'git pull') before pushing again.  See the
    'Note about fast-forwards' section of 'git push --help' for details.
    

    尝试git pull heroku master

    warning: no common commits
    remote: Counting objects: 215, done.
    remote: Compressing objects: 100% (147/147), done.
    remote: Total 215 (delta 82), reused 132 (delta 62)Receiving objects:  79% (170/
    
    Receiving objects: 100% (215/215), 1.49 MiB | 107 KiB/s, done.
    Resolving deltas: 100% (82/82), done.
    From heroku.com:myapp
     * branch            master     -> FETCH_HEAD
    Auto-merging start.php
    CONFLICT (add/add): Merge conflict in start.php
    Auto-merging src/appinfo.txt
    CONFLICT (add/add): Merge conflict in src/appinfo.txt
    Auto-merging result.php
    CONFLICT (add/add): Merge conflict in result.php
    Auto-merging landhere.php
    CONFLICT (add/add): Merge conflict in landhere.php
    Automatic merge failed; fix conflicts and then commit the result.
    

    尝试git push heroku -f

    F:\myapp>git remote add heroku git@heroku.com:myapp.git
    F:\myapp>git push heroku -f
    
    Counting objects: 41, done.
    Delta compression using up to 4 threads.
    Compressing objects: 100% (40/40), done.
    Writing objects: 100% (41/41), 1.36 MiB | 12 KiB/s, done.
    Total 41 (delta 0), reused 0 (delta 0)
    
    -----> Heroku receiving push
     !     Heroku push rejected, no Cedar-supported app detected
    
    To git@heroku.com:myapp.git
     ! [remote rejected] master -> master (pre-receive hook declined)
    error: failed to push some refs to 'git@heroku.com:myapp.git'
    

1 个答案:

答案 0 :(得分:6)

看起来你确实与上游存在合并冲突。我建议如下:

1。运行git fetch origin

2。运行git log ..origin/master以查看您原来还没有的新内容。请注意,如果您尝试使用'git push -f'将覆盖这些提交...

3。运行git pull --rebase(这可能会因合并​​冲突而失败)。在成功拉动并重新推动后,您的推动应该起作用。但是,我会密切注意那些合并冲突,因为在你的情况下,它们似乎源于一个乱码的历史(也许是之前的合并/转换出错了?)

4. 如果其他所有方法都失败了,请创建一个新分支,指向origin / master(git checkout -b new_master origin/master),然后使用git-loggit-cherry-pick - fish与origin / master相关的唯一真正新的提交。然后推送这个新分支并归档旧主分区。

假设上述四种方法都失败了,远程存储库可能存在问题。