小编典典

git错误:无法将一些参考推送到远程

all

由于某种原因,我现在不能推动,而我昨天可以做到。也许我搞砸了配置或其他东西。

这就是发生的事情:

当我使用 git push origin master

gitbashscr

我的工作目录和远程存储库是什么样的:

包含以下目录的 Windows 文件夹的屏幕截图:.git、css、js。 还有这些文件:index.php、readme、setsu.php。
带有箭头的单词“local”指向 css 文件夹。 下面是标题为“github”的屏幕截图,以及一个 css 文件夹和 index.php
文件


阅读 193

收藏
2022-03-02

共1个答案

小编典典

(注意:从 2020 年 10 月开始,任何新存储库都是使用默认分支创建的main,而不是master。您可以将现有存储库默认分支从
重命名mastermain
。2014 年答案的
其余部分已更新为使用“ main”)

如果 GitHub 存储库看到新的提交被推送到它,当你在本地工作时,我建议使用:

git pull --rebase
git push

完整的语法是:

git pull --rebase origin main
git push origin main

使用 Git 2.6+(2015 年 9 月),完成后(一次)

git config --global pull.rebase true
git config --global rebase.autoStash true

一个简单的git pull就足够了。
(注意:在Git 2.27 Q22020中,amerge.autostash也可用于您的常规拉取,无需变基)

这样,您将在新更新的(或: )--rebase之上重播(部分)您的本地提交。origin/main``origin/yourBranch``git pull origin yourBranch

请参阅Git 袖珍书第 6
章使用变基拉
取更完整的示例。

我会推荐一个:

# add and commit first
git push -u origin main

这将在您的本地主分支与其上游分支之间建立跟踪关系。
之后,该分支的任何未来推送都可以通过简单的方式完成:

git push

由于 OP已经重置并在以下位置重做其提交origin/main

git reset --mixed origin/main
git add .
git commit -m "This is a new commit for what I originally planned to be amended"
git push origin main

没有必要pull --rebase

注意:git reset --mixed origin/main也可以写成git resetorigin/main,因为这个--mixed选项是使用时的默认选项git reset

2022-03-02