2

我是 github 的新手。我一直在研究从 github 获取的代码。现在我完成了我的修改,我想将我的代码推送到 github。我想为我处理的原始代码创建一个分支,并将我开发的代码推送到该分支上。然而,当我从事开发工作时,原始代码发生了一些变化。因此,当我尝试将新代码推送到 fork 时,出现以下错误:

git push original master 
To https://github.com/<username>/<projectName>.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/<username>/<projectName>.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

输出以下内容:

Pull is not possible because you have unmerged files.
Please, fix them up in the work tree, and then use 'git add/rm <file>'
as appropriate to mark resolution, or use 'git commit -a'.

我不能从这一点上继续。我应该怎么做才能提交我的项目?

4

2 回答 2

7

好吧,git 告诉你该怎么做。如果你想拉,你需要先完成不完整的合并。 Git status应该告诉您哪些文件尚未合并。您需要解决合并冲突,然后git add在文件上使用以告诉 git 冲突已解决。

话虽如此,如果您的目标是完成一个分支,您应该首先分支代码,克隆分支代码,对其进行修改,然后将您的更改推送回分支。完成后,您可以向原始项目的作者提交拉取请求以集成您的更改。

于 2012-06-21T17:52:28.547 回答
-5

[危险] 如果您在团队中工作,请勿尝试

试试这个。

git push -f original master 

总是节省一天...

于 2012-06-21T19:04:15.503 回答